/* NoImages_style4 — responsive public user interface */
:root {
  --navy-950: #061d3b;
  --navy-900: #092b57;
  --navy-800: #0b3d72;
  --blue-600: #0879e8;
  --blue-500: #1591f4;
  --blue-100: #eaf4ff;
  --pink-600: #cf416a;
  --pink-500: #dc6385;
  --pink-100: #fff0f5;
  --ink-900: #172033;
  --ink-700: #40506a;
  --ink-500: #6d7b91;
  --line: #dbe4ef;
  --surface: #ffffff;
  --surface-soft: #f5f8fc;
  --success: #237a4b;
  --danger: #b42336;
  --radius-sm: 8px;
  --radius-md: 14px;
  --radius-lg: 20px;
  --shadow-sm: 0 2px 10px rgba(6, 29, 59, .07);
  --shadow-md: 0 12px 34px rgba(6, 29, 59, .11);
  --container: 1600px;
  --font: -apple-system, BlinkMacSystemFont, "Segoe UI", Tahoma, Arial, sans-serif;
}

*, *::before, *::after { box-sizing: border-box; }

html {
  direction: rtl;
  min-width: 0;
  background: var(--surface-soft);
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

body.theme-noimages-3 {
  min-width: 0;
  margin: 0;
  color: var(--ink-900);
  background: var(--surface-soft);
  font-family: var(--font);
  font-size: 15px;
  line-height: 1.7;
  overflow-wrap: anywhere;
}

body.theme-noimages-3 img,
body.theme-noimages-3 video,
body.theme-noimages-3 iframe,
body.theme-noimages-3 object,
body.theme-noimages-3 embed {
  max-width: 100%;
}

body.theme-noimages-3 img { height: auto; border: 0; }

body.theme-noimages-3 a {
  color: #075fc7;
  text-decoration: none;
  transition: color .18s ease, background-color .18s ease, border-color .18s ease;
}

body.theme-noimages-3 a:hover { color: var(--pink-600); }
body.theme-noimages-3 a:focus-visible,
body.theme-noimages-3 button:focus-visible,
body.theme-noimages-3 input:focus-visible,
body.theme-noimages-3 select:focus-visible,
body.theme-noimages-3 textarea:focus-visible {
  outline: 3px solid rgba(21, 145, 244, .28);
  outline-offset: 2px;
}

.sr-only {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

.site-container {
  width: min(100%, var(--container));
  min-width: 0;
  margin-inline: auto;
  background: var(--surface);
  box-shadow: 0 0 0 1px rgba(9, 43, 87, .04), var(--shadow-md);
}

/* Header and navigation */
.site-header { background: var(--navy-900); }

.primary-nav {
  position: relative;
  z-index: 20;
  min-height: 60px;
  border-bottom: 5px solid var(--pink-600);
  background: var(--navy-900);
}

.primary-nav .nav-bar { display: none; }

.primary-nav > ul {
  display: flex;
  align-items: stretch;
  justify-content: center;
  gap: clamp(2px, 1.5vw, 24px);
  min-height: 60px;
  margin: 0;
  padding: 0 18px;
  list-style: none;
}

.primary-nav li { display: flex; min-width: 0; }

.primary-nav li a {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 60px;
  padding: 8px clamp(10px, 1.2vw, 22px);
  color: #fff;
  font-size: clamp(14px, 1.15vw, 18px);
  font-weight: 650;
  white-space: nowrap;
  border-radius: 8px 8px 0 0;
}

.primary-nav li a:hover,
.primary-nav li a:focus-visible {
  color: #fff;
  background: rgba(255, 255, 255, .1);
}

.hero-link { display: block; line-height: 0; background: #cbeaff; }
.hero-image { display: block; width: 100%; height: auto; aspect-ratio: 1600 / 288; object-fit: contain; }

/* Main layout */
.site-layout {
  display: grid;
  align-items: start;
  gap: clamp(16px, 2vw, 28px);
  min-width: 0;
  padding: clamp(18px, 2.2vw, 34px);
}

.site-layout.no-sidebars { grid-template-columns: minmax(0, 1fr); grid-template-areas: "main"; }
.site-layout.has-right-sidebar { grid-template-columns: minmax(230px, 280px) minmax(0, 1fr); grid-template-areas: "right main"; }
.site-layout.has-left-sidebar { grid-template-columns: minmax(0, 1fr) minmax(230px, 280px); grid-template-areas: "main left"; }
.site-layout.has-two-sidebars { grid-template-columns: minmax(210px, 240px) minmax(0, 1fr) minmax(210px, 240px); grid-template-areas: "right main left"; }

.site-main { grid-area: main; min-width: 0; }
.site-sidebar-left { grid-area: left; }
.site-sidebar-right { grid-area: right; }
.site-sidebar { min-width: 0; }
.mobile-sidepanel-toggle { display: none; }
.mobile-header-action,
.mobile-panel-backdrop,
.mobile-drawer-header { display: none; }

.page-home .site-layout {
  padding-top: clamp(18px, 2.2vw, 34px);
}

/* Center blocks */
.cent {
  width: 100%;
  min-width: 0;
  min-height: 64px;
  margin: 0;
  overflow: hidden;
  color: #fff;
  background: linear-gradient(135deg, var(--navy-900), var(--blue-600));
  border-radius: var(--radius-md) var(--radius-md) 0 0;
}

.centhead {
  display: flex;
  align-items: center;
  min-height: 64px;
  margin: 0;
  padding: 14px clamp(18px, 3vw, 40px);
  color: #fff;
  font-size: clamp(20px, 2vw, 29px);
  font-weight: 750;
}

.centbody {
  min-width: 0;
  overflow: hidden;
  direction: rtl;
  background: var(--surface);
  border: 1px solid var(--line);
  border-top: 0;
  border-radius: 0 0 var(--radius-md) var(--radius-md);
}

.centervalue { min-width: 0; padding: clamp(14px, 2vw, 28px); }
.centdown { height: 0; margin: 0 0 clamp(20px, 3vw, 36px); }
.block-content-no-border { min-width: 0; }

/* Side blocks */
.BlocksCont {
  width: 100%;
  min-width: 0;
  margin: 0 0 18px;
  padding: 0;
  overflow: hidden;
  background: #fff;
  border: 1px solid var(--line);
  border-radius: var(--radius-md);
  box-shadow: var(--shadow-sm);
}

.blk1-head_outer, .blk2-head_outer, .blk3-head_outer, .blk4-head_outer {
  width: 100%;
  min-height: 54px;
  border: 0;
  border-radius: 0;
  background: linear-gradient(135deg, var(--navy-900), var(--blue-600));
}

.blk2-head_outer { background: linear-gradient(135deg, #b72f59, var(--pink-500)); }
.blk3-head_outer { background: linear-gradient(135deg, var(--navy-950), var(--navy-800)); }
.blk4-head_outer { background: linear-gradient(135deg, var(--navy-800), var(--blue-500)); }

.blk1-head_in, .blk2-head_in, .blk3-head_in, .blk4-head_in {
  display: flex;
  align-items: center;
  min-height: 54px;
  padding: 10px 16px;
  color: #fff;
  font-size: 17px;
  font-weight: 750;
}

.site-sidebar .blk1-head_in::before,
.site-sidebar .blk2-head_in::before,
.site-sidebar .blk3-head_in::before,
.site-sidebar .blk4-head_in::before {
  content: "";
  flex: 0 0 auto;
  width: 4px;
  height: 22px;
  margin-inline-end: 9px;
  background: #fff;
  border-radius: 999px;
  opacity: .85;
}

.blk1-body_outer, .blk2-body_outer, .blk3-body_outer, .blk4-body_outer {
  width: 100%;
  min-width: 0;
  background: #fff;
  border: 0;
  border-top: 0;
}

.blk1-body_in, .blk2-body_in, .blk3-body_in, .blk4-body_in { min-width: 0; padding: 18px 14px 22px; }

.blk1-footer, .blk2-footer, .blk3-footer, .blk4-footer {
  width: 100%;
  height: 4px;
  border: 0;
  border-radius: 0;
  background: var(--blue-600);
}

.blk2-footer { background: var(--pink-600); }
.blk3-footer { background: var(--navy-800); }
.blk4-footer { background: var(--blue-500); }

.site-sidebar ul { margin: 0; padding: 0; list-style: none; }
.site-sidebar li + li { border-top: 1px solid #edf1f6; }
.site-sidebar li a { display: block; padding: 9px 5px; }
.site-sidebar input[type="text"],
.site-sidebar input[type="password"],
.site-sidebar input[type="email"],
.site-sidebar select,
.site-sidebar textarea { width: 100% !important; }

.sidebar-menu__intro,
.sidebar-login-form__intro {
  margin: 0 0 12px;
  color: var(--ink-500);
  font-size: 12px;
  line-height: 1.6;
}

.sidebar-menu ul { display: grid; gap: 5px; }
.site-sidebar .sidebar-menu li { border: 0; }
.site-sidebar .sidebar-menu a {
  display: flex;
  align-items: center;
  gap: 9px;
  min-height: 42px;
  padding: 8px 10px;
  overflow-wrap: normal;
  color: var(--navy-900);
  font-weight: 650;
  line-height: 1.45;
  background: var(--surface-soft);
  border: 1px solid transparent;
  border-radius: 10px;
}
.site-sidebar .sidebar-menu a::after {
  content: "‹";
  margin-inline-start: auto;
  color: var(--blue-600);
  font-size: 20px;
  line-height: 1;
}
.site-sidebar .sidebar-menu a:hover,
.site-sidebar .sidebar-menu a:focus-visible {
  color: var(--navy-900);
  background: var(--blue-100);
  border-color: #badcfb;
}
.sidebar-account-menu img {
  flex: 0 0 auto;
  width: 22px;
  height: 22px !important;
  object-fit: contain;
  border-radius: 5px;
}
.sidebar-menu__badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 23px;
  height: 23px;
  margin-inline-start: auto;
  padding: 0 6px;
  color: #fff;
  font-size: 11px;
  background: var(--pink-600);
  border-radius: 999px;
}
.sidebar-login-form { display: grid; gap: 11px; }
.sidebar-login-form__field { display: grid; gap: 5px; }
.sidebar-login-form__field > span { color: var(--ink-700); font-size: 12px; font-weight: 700; }
.sidebar-login-form input[type="text"],
.sidebar-login-form input[type="password"] {
  min-height: 42px;
  padding: 8px 10px;
  color: var(--ink-900);
  background: #fff;
  border: 1px solid #cbd8e8;
  border-radius: 9px;
}
.sidebar-login-form__remember { display: flex; align-items: center; gap: 7px; color: var(--ink-700); font-size: 12px; }
.sidebar-login-form__remember input { flex: 0 0 auto; width: 17px; height: 17px; margin: 0; }
.sidebar-login-form .sub-button {
  width: 100%;
  min-height: 43px;
  color: #fff;
  font-weight: 750;
  background: linear-gradient(135deg, var(--pink-600), var(--pink-500));
  border: 0;
  border-radius: 10px;
  cursor: pointer;
}
.sidebar-login-form__recover { display: block; margin-top: 11px; text-align: center; font-size: 12px; }
.sidebar-login-form__register { display: none; }

/* Member cards */
.member-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(12px, 1.7vw, 24px);
  min-width: 0;
}

.member-card {
  display: flex;
  flex-direction: column;
  min-width: 0;
  overflow: hidden;
  background: #fff;
  border: 1px solid var(--line);
  border-radius: var(--radius-md);
  box-shadow: var(--shadow-sm);
}

.member-card__head {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  min-width: 0;
  min-height: 44px;
  padding: 8px 10px;
  color: #fff;
  background: var(--blue-600);
  font-weight: 750;
  text-align: center;
}

.member-card--woman .member-card__head { background: var(--pink-500); }
.member-card__head a { min-width: 0; overflow: hidden; color: #fff !important; text-overflow: ellipsis; white-space: nowrap; }
.member-card__flag { flex: 0 0 auto; width: 19px; height: 18px !important; object-fit: contain; }

.member-card__body {
  display: grid;
  grid-template-columns: 82px minmax(0, 1fr);
  align-items: start;
  gap: 12px;
  min-width: 0;
  min-height: 132px;
  padding: 16px;
}

.member-card__avatar-link { display: block; min-width: 0; }
.member-card__avatar {
  display: block;
  width: 82px;
  height: 82px !important;
  border-radius: 50%;
  object-fit: cover;
  object-position: center;
  background: var(--blue-100);
  border: 3px solid #fff;
  box-shadow: 0 0 0 1px var(--line);
}

.member-card__content { min-width: 0; color: var(--ink-700); line-height: 1.75; }
.member-card__content strong { color: var(--ink-900); }
.member-card__date { display: block; margin-top: 8px; color: var(--ink-500); font-size: 13px; }
.member-grid + .pager, .member-pager { margin-top: 20px; text-align: center; }
.member-card[hidden],
.member-filter-empty[hidden] { display: none !important; }

.centimg1--member-filter {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
}

.centimg1--member-filter .centhead { flex: 1 1 auto; }
.centimg1--member-filter > .member-filter { margin-inline-end: clamp(18px, 3vw, 40px); }

.member-filter {
  display: flex;
  flex: 0 0 auto;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end;
  gap: 6px;
  margin-inline-start: auto;
}

.centervalue > .member-filter {
  justify-content: flex-start;
  margin: 0 0 14px;
}

body.theme-noimages-3 .member-filter button {
  min-width: 54px;
  min-height: 34px;
  padding: 5px 13px;
  color: #fff;
  font-size: 13px;
  font-weight: 750;
  line-height: 1.25;
  white-space: nowrap;
  background: transparent;
  border: 1px solid rgba(255, 255, 255, .82);
  border-radius: 999px;
}

body.theme-noimages-3 .member-filter button:hover,
body.theme-noimages-3 .member-filter button:focus-visible {
  color: var(--navy-900);
  background: #fff;
  border-color: #fff;
}

body.theme-noimages-3 .member-filter button.is-active {
  color: var(--blue-600);
  background: #fff;
  border-color: #fff;
  box-shadow: 0 2px 8px rgba(6, 29, 59, .16);
}

.centervalue > .member-filter button {
  color: var(--navy-900);
  border-color: #8fc9fb;
}

.member-filter-empty {
  margin: 12px 0 0;
  padding: 14px;
  color: var(--ink-700);
  text-align: center;
  background: var(--surface-soft);
  border: 1px dashed #b9cbe0;
  border-radius: 10px;
}

/* Legacy member markup remains supported in side blocks */
.blk5-head_outer, .blk5-head_outer2,
.blk5-body_outer, .blk5-body_outer2,
.blk5-head_outerBorder, .blk5-head_outerBorder2,
.blk5-footer, .blk5-footerM { width: 100%; }

.blk5-head_outer, .blk5-head_outer2 {
  min-height: 38px;
  height: auto;
  color: #fff;
  background: var(--pink-500);
  border-radius: var(--radius-sm) var(--radius-sm) 0 0;
}
.blk5-head_outer2 { background: var(--blue-600); }
.blk5-head_in { min-width: 0; padding: 7px 10px; font-size: 14px; font-weight: 700; text-align: center; }
.blk5-body_outer, .blk5-body_outer2 { background: #fff; border: 1px solid var(--line); border-top: 0; }
.blk5-body_in { min-height: 86px; padding: 10px; }
.blk5-footer, .blk5-footerM { height: 5px; background: var(--navy-900); border-radius: 0 0 var(--radius-sm) var(--radius-sm); }
.BlocksUserImgDiv {
  float: right;
  width: 70px;
  height: 70px;
  margin: 0 0 5px 9px;
  border-radius: 50%;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}

/* Forms and feedback */
body.theme-noimages-3 input,
body.theme-noimages-3 select,
body.theme-noimages-3 textarea,
body.theme-noimages-3 button { font: inherit; }

body.theme-noimages-3 input[type="text"],
body.theme-noimages-3 input[type="password"],
body.theme-noimages-3 input[type="email"],
body.theme-noimages-3 input[type="number"],
body.theme-noimages-3 input[type="tel"],
body.theme-noimages-3 input[type="url"],
body.theme-noimages-3 input[type="file"],
body.theme-noimages-3 select,
body.theme-noimages-3 textarea {
  max-width: 100%;
  min-height: 42px;
  padding: 8px 11px;
  color: var(--ink-900);
  background: #fff;
  border: 1px solid #bdcad9;
  border-radius: var(--radius-sm);
}

body.theme-noimages-3 textarea { min-height: 120px; resize: vertical; }

body.theme-noimages-3 input[type="submit"],
body.theme-noimages-3 input[type="button"],
body.theme-noimages-3 button,
.sub-button {
  min-height: 42px;
  height: auto;
  padding: 8px 18px;
  color: #fff;
  font-weight: 700;
  background: var(--blue-600);
  border: 1px solid var(--blue-600);
  border-radius: var(--radius-sm);
  cursor: pointer;
}

body.theme-noimages-3 input[type="submit"]:hover,
body.theme-noimages-3 input[type="button"]:hover,
body.theme-noimages-3 button:hover { background: var(--navy-800); border-color: var(--navy-800); }

.notice, .info, .success, .error, .wrongajax, .rightajax {
  height: auto;
  margin: 12px 0;
  padding: 14px 16px;
  border-radius: var(--radius-sm);
}
.notice { color: #7a2342; background: var(--pink-100); border: 1px solid #f1a9bf; }
.info { color: #07559e; background: var(--blue-100); border: 1px solid #90c9fb; }
.success, .rightajax { color: #185a38; background: #e7f6ed; border: 1px solid #9ed5b5; }
.error, .wrongajax { color: #8f1f31; background: #fff0f2; border: 1px solid #ed9dab; }

.membership-upgrade-notice {
  display: block !important;
  clear: both;
  float: none !important;
  grid-template-columns: none !important;
  width: 100%;
  min-width: 0;
  max-width: 100%;
  margin: 16px 0;
  padding: clamp(16px, 3vw, 24px);
  box-sizing: border-box;
  color: #8f1f31;
  text-align: center;
  background: #fff0f2;
  border: 1px solid #ed9dab;
  border-radius: var(--radius-sm);
}
.membership-upgrade-notice::before,
.membership-upgrade-notice::after,
.membership-upgrade-notice > img { display: none !important; content: none !important; }
.membership-upgrade-notice p { margin: 0; text-align: center; }
.membership-upgrade-notice__lead {
  font-size: clamp(15px, 1.55vw, 18px);
  line-height: 1.85;
}
.membership-upgrade-notice__details {
  margin-top: 8px !important;
  font-size: clamp(13px, 1.3vw, 16px);
  line-height: 1.9;
}

/* Tables: data remains tabular; only known layout pages are specialized below */
body.theme-noimages-3 table { max-width: 100%; border-collapse: collapse; }
body.theme-noimages-3 td, body.theme-noimages-3 th { font: inherit; }
.tab { width: 100%; border: 1px solid var(--blue-600); }
.h-td { min-height: 36px; padding: 8px 13px; color: #fff; background: var(--navy-800); }
.r-td { min-height: 38px; padding: 7px 12px; color: var(--ink-900); font-weight: 700; background: #dbeaff; border: 1px solid #fff; }
.l-td, .l-td2, .l-msg { min-height: 38px; padding: 7px 12px; color: var(--ink-900); background: #fff; border: 1px solid #edf1f6; }
.r-tdco { background: var(--pink-100); }
.membership-comparison-mobile { display: none; }

/* Registration and account-update forms */
.page-register .site-main form,
.page-account .site-main form,
.page-contact .site-main form,
.page-search .site-main form,
.page-login .site-main form { width: 100%; min-width: 0; }

.page-register .site-main form > table,
.page-register .site-main form > div > table,
.page-account .site-main form:not(.messages-form):not(.new-message-form) > table,
.page-account .site-main form:not(.messages-form):not(.new-message-form) > div > table,
.page-search .site-main form > table,
.page-contact .site-main form > table {
  width: 100% !important;
  min-width: 0 !important;
  margin: 0 0 14px;
  table-layout: fixed;
  background: #fff;
  border: 1px solid var(--line);
  border-radius: var(--radius-sm);
}

.page-register .site-main form td,
.page-account .site-main form:not(.messages-form):not(.new-message-form) td,
.page-search .site-main form td,
.page-contact .site-main form td { max-width: 100%; overflow-wrap: anywhere; }

.page-register .site-main input:not([type="radio"]):not([type="checkbox"]):not([type="submit"]):not([type="button"]),
.page-register .site-main select,
.page-register .site-main textarea,
.page-account .site-main input:not([type="radio"]):not([type="checkbox"]):not([type="submit"]):not([type="button"]),
.page-account .site-main select,
.page-account .site-main textarea,
.page-search .site-main input:not([type="radio"]):not([type="checkbox"]):not([type="submit"]):not([type="button"]),
.page-search .site-main select,
.page-search .site-main textarea,
.page-contact .site-main input:not([type="radio"]):not([type="checkbox"]):not([type="submit"]):not([type="button"]),
.page-contact .site-main select,
.page-contact .site-main textarea,
.page-login .site-main input:not([type="radio"]):not([type="checkbox"]):not([type="submit"]):not([type="button"]),
.page-login .site-main select,
.page-login .site-main textarea { width: min(100%, 460px) !important; }

.page-account .site-main table { width: 100% !important; min-width: 0; }
.page-login .site-main form table { width: 100% !important; min-width: 0; table-layout: fixed; }
.page-users:not(.page-register):not(.page-profile) .site-main > table {
  display: block;
  width: 100% !important;
  max-width: 100%;
  overflow-x: auto;
  overscroll-behavior-inline: contain;
  -webkit-overflow-scrolling: touch;
}

/* Registration agreement: semantic, responsive and isolated from the registration form */
.registration-start {
  display: grid;
  gap: 20px;
  width: 100%;
  max-width: 960px;
  margin: 0 auto;
  color: var(--ink-900);
}

.registration-terms-card,
.registration-type-card {
  min-width: 0;
  overflow: hidden;
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 18px;
  box-shadow: 0 10px 30px rgba(7, 43, 83, .07);
}

.registration-card-heading {
  padding: clamp(18px, 2.4vw, 26px);
  color: #fff;
  text-align: right;
  background: linear-gradient(120deg, var(--navy-900), var(--blue-600));
}

.registration-card-heading__eyebrow,
.registration-type-heading__step {
  display: inline-flex;
  align-items: center;
  min-height: 25px;
  padding: 3px 10px;
  font-size: 12px;
  font-weight: 800;
  line-height: 1.4;
  border-radius: 999px;
}

.registration-card-heading__eyebrow {
  color: #fff;
  background: rgba(255, 255, 255, .15);
  border: 1px solid rgba(255, 255, 255, .26);
}

.registration-card-heading h2,
.registration-type-heading h2 {
  margin: 10px 0 5px;
  font-size: clamp(21px, 2vw, 27px);
  line-height: 1.4;
}

.registration-card-heading h2:only-child,
.registration-type-heading h2:only-child { margin: 0; }

.registration-card-heading p,
.registration-type-heading p {
  margin: 0;
  font-size: clamp(13px, 1.15vw, 15px);
  line-height: 1.75;
}

.registration-card-heading p { color: rgba(255, 255, 255, .86); }

.registration-terms-content {
  max-height: 320px;
  padding: clamp(18px, 2.5vw, 28px);
  overflow-y: auto;
  overscroll-behavior: contain;
  font-size: clamp(14px, 1.18vw, 16px);
  line-height: 1.9;
  text-align: right;
  border-top: 1px solid var(--line);
}

.registration-terms-content h2 {
  display: flex;
  align-items: center;
  gap: 9px;
  margin: 0 0 10px;
  color: var(--navy-900);
  font-size: clamp(17px, 1.5vw, 20px);
  line-height: 1.5;
}

.registration-terms-content h2:not(:first-child) { margin-top: 22px; }

.registration-terms-content h2::before {
  width: 5px;
  height: 22px;
  content: "";
  background: var(--pink-600);
  border-radius: 999px;
}

.registration-terms-content ul {
  display: grid;
  gap: 7px;
  margin: 0;
  padding: 0 24px 0 0;
}

.registration-terms-content li {
  padding-inline-start: 4px;
  line-height: 1.85;
}

.registration-terms-content li::marker { color: var(--blue-600); }
.registration-terms-content > p:empty,
.registration-terms-content > p:last-child { display: none; }

.registration-consent {
  position: relative;
  display: grid;
  grid-template-columns: 25px minmax(0, 1fr);
  gap: 11px;
  align-items: center;
  margin: 0;
  padding: 16px clamp(18px, 2.5vw, 28px);
  cursor: pointer;
  background: #f3f8ff;
  border-top: 1px solid var(--line);
}

.registration-consent input {
  position: absolute;
  width: 1px;
  height: 1px;
  opacity: 0;
}

.registration-consent__control {
  position: relative;
  display: block;
  width: 23px;
  height: 23px;
  background: #fff;
  border: 2px solid #94abc5;
  border-radius: 7px;
  transition: background-color .18s ease, border-color .18s ease, box-shadow .18s ease;
}

.registration-consent input:checked + .registration-consent__control {
  background: var(--blue-600);
  border-color: var(--blue-600);
}

.registration-consent input:checked + .registration-consent__control::after {
  position: absolute;
  top: 3px;
  right: 7px;
  width: 6px;
  height: 11px;
  content: "";
  border: solid #fff;
  border-width: 0 0 2px 2px;
  transform: rotate(-45deg);
}

.registration-consent input:focus-visible + .registration-consent__control {
  outline: 3px solid rgba(14, 126, 232, .25);
  outline-offset: 2px;
}

.registration-consent__copy {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.registration-consent__copy strong {
  color: var(--navy-900);
  font-size: 15px;
  line-height: 1.5;
}

.registration-consent__copy small {
  color: var(--muted);
  font-size: 12px;
  line-height: 1.55;
}

.registration-terms-details {
  background: #fff;
  border-top: 1px solid var(--line);
}

.registration-terms-details summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 44px;
  padding: 9px clamp(18px, 2.5vw, 28px);
  color: var(--blue-700);
  font-size: 13px;
  font-weight: 800;
  line-height: 1.5;
  cursor: pointer;
  list-style: none;
  background: #fff;
}

.registration-terms-details summary::-webkit-details-marker { display: none; }

.registration-terms-details summary::after {
  display: grid;
  place-items: center;
  width: 24px;
  height: 24px;
  content: "+";
  color: var(--blue-700);
  font-size: 18px;
  line-height: 1;
  background: #edf6ff;
  border-radius: 50%;
}

.registration-terms-details[open] summary::after { content: "−"; }

.registration-type-card { max-width: 760px; margin-inline: auto; }

.registration-type-heading {
  padding: 18px 22px 15px;
  text-align: center;
  background: #f7faff;
  border-bottom: 1px solid var(--line);
}

.registration-type-heading__step {
  color: var(--blue-700);
  background: #e8f3ff;
}

.registration-type-heading h2 {
  margin-top: 7px;
  color: var(--navy-900);
}

.registration-type-heading p { color: var(--muted); }

.registration-type-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  padding: 16px;
}

.registration-type-option {
  position: relative;
  display: grid;
  grid-template-columns: 76px minmax(0, 1fr) 20px;
  gap: 12px;
  align-items: center;
  min-width: 0;
  min-height: 100px;
  padding: 14px;
  color: var(--navy-900);
  text-decoration: none;
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 14px;
  box-shadow: 0 5px 16px rgba(7, 43, 83, .05);
  transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}

.registration-type-option--man { border-top: 4px solid var(--blue-600); }
.registration-type-option--woman { border-top: 4px solid var(--pink-600); }

.registration-type-option__avatar {
  display: grid;
  place-items: center;
  width: 72px;
  height: 72px;
  overflow: hidden;
  background: #eef6ff;
  border: 1px solid #d8e6f5;
  border-radius: 50%;
}

.registration-type-option--woman .registration-type-option__avatar { background: #fff3f7; }

.registration-type-option__avatar img {
  display: block;
  width: 64px;
  height: 64px !important;
  object-fit: contain;
}

.registration-type-option__copy {
  display: grid;
  gap: 3px;
  min-width: 0;
}

.registration-type-option__copy small {
  color: var(--muted);
  font-size: 11.5px;
  line-height: 1.5;
}

.registration-type-option__copy strong {
  color: var(--navy-900);
  font-size: 17px;
  line-height: 1.45;
}

.registration-type-option__arrow {
  color: var(--blue-600);
  font-size: 28px;
  font-weight: 700;
  line-height: 1;
}

@media (hover: hover) and (pointer: fine) {
  .registration-type-option:hover {
    border-color: #9bc8f4;
    box-shadow: 0 10px 24px rgba(7, 43, 83, .11);
    transform: translateY(-2px);
  }
  .registration-type-option--woman:hover { border-color: #e8a7bd; }
}

/* Registration form: modern cards while preserving every original field and handler */
.registration-form-hero {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  width: 100%;
  max-width: 960px;
  margin: 0 auto 16px;
  padding: 18px 22px;
  color: #fff;
  text-align: right;
  background: linear-gradient(120deg, var(--navy-900), var(--blue-600));
  border-radius: 17px;
  box-shadow: 0 9px 24px rgba(7, 43, 83, .09);
}

.registration-form-hero--woman {
  background: linear-gradient(120deg, var(--navy-900) 0 70%, #bd365f 100%);
}

.registration-form-hero__copy {
  display: grid;
  gap: 3px;
  min-width: 0;
}

.registration-form-hero__eyebrow {
  width: max-content;
  max-width: 100%;
  padding: 3px 10px;
  font-size: 11px;
  font-weight: 800;
  line-height: 1.5;
  background: rgba(255, 255, 255, .15);
  border: 1px solid rgba(255, 255, 255, .23);
  border-radius: 999px;
}

.registration-form-hero h2 {
  margin: 4px 0 0;
  color: #fff;
  font-size: clamp(21px, 2vw, 27px);
  line-height: 1.35;
}

.registration-form-hero p {
  margin: 0;
  color: rgba(255, 255, 255, .86);
  font-size: 13px;
  line-height: 1.7;
}

.registration-form-hero__privacy {
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  min-height: 38px;
  padding: 7px 13px;
  color: #fff;
  font-size: 12px;
  font-weight: 800;
  white-space: nowrap;
  background: rgba(255, 255, 255, .13);
  border: 1px solid rgba(255, 255, 255, .24);
  border-radius: 999px;
}

.registration-profile-form {
  display: grid;
  gap: 13px;
  width: 100%;
  max-width: 960px;
  margin: 0 auto;
}

.registration-profile-form > * { min-width: 0; }
.registration-profile-form > br { display: none; }

.registration-profile-form > table.tab {
  display: table;
  width: 100% !important;
  margin: 0 !important;
  overflow: hidden;
  table-layout: fixed;
  background: #fff;
  border: 1px solid var(--line) !important;
  border-collapse: separate !important;
  border-spacing: 0;
  border-radius: 15px;
  box-shadow: 0 5px 16px rgba(7, 43, 83, .045);
}

.registration-profile-form > table.tab > tbody {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.registration-profile-form > table.tab > tbody > tr {
  display: grid;
  grid-template-columns: minmax(140px, 39%) minmax(0, 1fr);
  min-width: 0;
  border-bottom: 1px solid #e8eef6;
}

.registration-profile-form > table.tab > tbody > tr:nth-last-child(2):nth-child(even),
.registration-profile-form > table.tab > tbody > tr:last-child { border-bottom: 0; }

.registration-profile-form > table.tab > tbody > tr:empty { display: none; }

.registration-profile-form > table.tab > tbody > tr.registration-section-row,
.registration-profile-form > table.registration-long-answer > tbody > tr {
  grid-column: 1 / -1;
}

.registration-profile-form > table.tab > tbody > tr.registration-section-row,
.registration-profile-form > table.registration-long-answer > tbody > tr {
  grid-template-columns: minmax(0, 1fr);
}

.registration-profile-form > table.tab > tbody > tr > td {
  display: flex;
  align-items: center;
  width: auto !important;
  min-width: 0 !important;
  height: auto !important;
  margin: 0;
  box-sizing: border-box;
}

.registration-profile-form > table.tab .h-td {
  min-height: 51px;
  padding: 12px 17px;
  color: #fff !important;
  font-size: 17px;
  font-weight: 850;
  line-height: 1.45;
  background: linear-gradient(110deg, var(--navy-900), var(--navy-800));
  border: 0;
}

.registration-profile-form--woman > table.tab .h-td {
  border-inline-end: 4px solid var(--pink-600);
}

.registration-profile-form > table.tab .h-td a,
.registration-profile-form > table.tab .h-td span,
.registration-profile-form > table.tab .h-td p {
  margin: 0;
  color: #fff !important;
  font: inherit;
  text-decoration: none;
}

.registration-profile-form > table.tab .r-td {
  min-height: 58px;
  padding: 9px 13px;
  color: var(--navy-900);
  font-size: 13.5px;
  font-weight: 800;
  line-height: 1.55;
  background: #f3f7fc;
  border: 0;
  border-inline-end: 1px solid #e5edf7;
}

.registration-profile-form > table.tab .l-td {
  flex-wrap: wrap;
  align-content: flex-start;
  gap: 3px;
  min-height: 58px;
  padding: 7px 10px;
  background: #fff;
  border: 0;
  transition: background-color .15s ease;
}

.registration-profile-form input:not([type="radio"]):not([type="checkbox"]):not([type="button"]):not([type="submit"]),
.registration-profile-form select,
.registration-profile-form textarea {
  width: 100% !important;
  min-width: 0;
  max-width: none !important;
  box-sizing: border-box;
  color: var(--ink-900);
  background: #fff;
  border: 1px solid #b8c9dc;
  border-radius: 9px;
  box-shadow: none;
}

.registration-profile-form input:not([type="radio"]):not([type="checkbox"]):not([type="button"]):not([type="submit"]),
.registration-profile-form select {
  min-height: 40px;
  padding: 7px 10px;
}

.registration-profile-form textarea {
  min-height: 140px;
  padding: 11px 12px;
  line-height: 1.8;
  resize: vertical;
}

.registration-profile-form input:not([type="radio"]):not([type="checkbox"]):not([type="button"]):not([type="submit"]),
.registration-profile-form select,
.registration-profile-form textarea {
  scroll-margin-top: 92px;
  transition: border-color .15s ease, box-shadow .15s ease, background-color .15s ease;
}

.registration-profile-form > table.tab .l-td:focus-within {
  background: #fbfdff;
}

.registration-profile-form input:focus,
.registration-profile-form select:focus,
.registration-profile-form textarea:focus {
  outline: 0;
  border-color: var(--blue-600);
  box-shadow: 0 0 0 3px rgba(14, 126, 232, .14);
}

/*
 * The legacy validator injects loading, success and error content after blur.
 * Keeping a permanent status slot prevents the table row (and its paired row)
 * from changing height every time the member moves to the next field.
 */
.registration-inline-validation {
  display: flex;
  flex: 1 0 100%;
  align-items: flex-start;
  width: 100%;
  min-width: 0;
  height: 22px;
  padding: 1px 2px 0;
  overflow: hidden;
  box-sizing: border-box;
  color: #b42336;
  font-size: 10px;
  font-weight: 700;
  line-height: 1.4;
  text-align: start;
}

.registration-inline-validation > span {
  display: block;
  width: 100%;
  min-width: 0;
  overflow: hidden;
  color: inherit;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.registration-inline-validation > span:empty {
  visibility: hidden;
}

.registration-inline-validation img {
  width: 15px;
  height: 15px !important;
  margin: 0 0 0 4px;
  object-fit: contain;
  vertical-align: middle;
}

.registration-inline-validation font {
  display: inline;
  min-width: 0;
  color: inherit !important;
  font: inherit;
  overflow-wrap: anywhere;
}

.registration-profile-form > p .sub-button:disabled {
  opacity: .58;
  cursor: not-allowed;
  box-shadow: none;
}

.registration-profile-form #age,
.registration-profile-form #length,
.registration-profile-form #weight,
.registration-profile-form select[name="number_of_children"] {
  width: calc(100% - 38px) !important;
}

.registration-profile-form > div[align="center"] {
  width: 100%;
  margin: -3px 0 1px;
}

.registration-profile-form > div[align="center"] center { display: block; }

.registration-profile-form table.groundnotice {
  width: 100% !important;
  margin: 0 !important;
  overflow: hidden;
  table-layout: fixed;
  background: #fff7f9;
  border: 1px solid #f1bdcc !important;
  border-collapse: separate !important;
  border-spacing: 0;
  border-radius: 11px;
}

.registration-profile-form table.groundnotice .notice {
  width: 100% !important;
  height: auto !important;
  padding: 10px 14px;
  color: #713246;
  font-size: 12px;
  line-height: 1.65;
  text-align: right;
  background: transparent;
  border: 0;
}

.registration-profile-form table.groundnotice ul {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 3px 25px;
  margin: 0;
  padding: 0 21px 0 0;
}

.registration-profile-form table.groundnotice li::marker { color: var(--pink-600); }
.registration-profile-form table.groundnotice p { margin: 0; line-height: inherit; }

.registration-profile-form > table.registration-long-answer .l-td {
  display: block;
  padding: 13px;
  text-align: right;
}

.registration-profile-form > table.registration-long-answer center,
.registration-profile-form > table.registration-long-answer div,
.registration-profile-form > table.registration-long-answer p {
  width: 100%;
  margin: 0;
}

.registration-profile-form > table.registration-long-answer table.groundnotice {
  margin-bottom: 10px !important;
}

.registration-profile-form > table.registration-long-answer br { display: none; }

.registration-profile-form > table.registration-long-answer textarea {
  resize: none;
}

.registration-field-feedback {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 4px 12px;
  width: 100%;
  min-height: 30px;
  margin-top: 5px !important;
  line-height: 1.5;
}

.registration-field-feedback small {
  flex: 0 0 auto;
  color: var(--ink-700);
  font-size: 12px;
}

.registration-validation-slot {
  display: inline-flex;
  flex: 1 1 250px;
  align-items: center;
  justify-content: center;
  min-width: 0;
  min-height: 36px;
  color: #cf202f;
  font-size: 12px;
  line-height: 1.5;
  text-align: center;
}

.registration-validation-slot img {
  width: 18px;
  height: 18px !important;
  margin-inline-end: 4px;
  object-fit: contain;
  vertical-align: middle;
}

.registration-validation-slot font {
  color: #cf202f !important;
  font: inherit;
}

.registration-profile-form object,
.registration-profile-form img { max-width: 100%; }

.registration-profile-form > p {
  margin: 2px 0 8px;
  text-align: center;
}

.registration-profile-form > p .sub-button {
  width: auto !important;
  min-width: 190px;
  min-height: 48px;
  padding: 10px 25px;
  color: #fff;
  font-size: 16px;
  font-weight: 850;
  background: linear-gradient(105deg, var(--navy-900), var(--blue-600));
  border: 0;
  border-radius: 11px;
  box-shadow: 0 7px 17px rgba(14, 126, 232, .18);
  cursor: pointer;
}

.registration-profile-form > p .sub-button:focus-visible {
  outline: 3px solid rgba(14, 126, 232, .25);
  outline-offset: 3px;
}

/* Advanced search and results */
.search-sort {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 8px;
  margin-bottom: 18px;
}

.search-sort a {
  display: inline-flex;
  align-items: center;
  min-height: 42px;
  padding: 8px 14px;
  color: var(--navy-900);
  background: var(--blue-100);
  border: 1px solid #bddcf8;
  border-radius: 999px;
}

.search-results { display: grid; gap: 18px; min-width: 0; }
.search-result-card { min-width: 0; overflow: hidden; background: #fff; border: 1px solid var(--line); border-radius: var(--radius-md); box-shadow: var(--shadow-sm); }
.search-result-card__header { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 12px 16px; color: #fff; background: var(--navy-900); }
.search-result-card__header > a { color: #fff !important; font-size: 18px; font-weight: 800; }
.member-status { display: inline-flex; align-items: center; gap: 5px; font-size: 13px; }
.member-status img { width: 18px; height: 18px !important; }
.search-result-card__grid { display: grid; grid-template-columns: 130px minmax(0, 1fr) minmax(150px, 190px); gap: 18px; align-items: start; min-width: 0; padding: 18px; }
.search-result-card__identity { display: grid; justify-items: center; gap: 8px; color: var(--ink-700); text-align: center; }
.search-result-card__avatar { display: block; width: 110px; height: 110px !important; object-fit: cover; border-radius: 50%; border: 4px solid #fff; box-shadow: 0 0 0 1px var(--line); }
.search-result-card__details { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1px; min-width: 0; margin: 0; overflow: hidden; border: 1px solid var(--line); border-radius: 10px; background: var(--line); }
.search-result-card__details > div { min-width: 0; padding: 9px 11px; background: #fff; }
.search-result-card__details dt { color: var(--ink-500); font-size: 12px; }
.search-result-card__details dd { min-width: 0; margin: 2px 0 0; color: var(--ink-900); font-weight: 650; }
.search-result-card__actions { display: grid; gap: 7px; }
.search-result-card__actions a { display: flex; align-items: center; gap: 8px; min-height: 42px; padding: 7px 10px; color: var(--navy-900); background: var(--surface-soft); border: 1px solid var(--line); border-radius: 9px; }
.search-result-card__actions img { flex: 0 0 auto; width: 26px; height: 26px !important; object-fit: contain; }

@media (max-width: 1050px) {
  .search-result-card__grid { grid-template-columns: 110px minmax(0, 1fr); }
  .search-result-card__actions { grid-column: 1 / -1; grid-template-columns: repeat(4, minmax(0, 1fr)); }
}

/* Profile and content */
.page-profile .site-main table,
.page-account .site-main table,
.page-content .site-main table { max-width: 100%; }

.page-profile .site-main > table,
.page-profile .centervalue > table { width: 100% !important; table-layout: fixed; }

.page-profile .usual,
.page-profile #usual2 {
  width: 100% !important;
  min-width: 0;
  margin: 14px 0 !important;
  padding: 0 !important;
  overflow: hidden;
  background: #fff !important;
  border: 1px solid var(--line);
  border-radius: var(--radius-md);
}

.profile-hero {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 170px minmax(190px, 260px);
  grid-template-areas: "info avatar media";
  gap: 18px;
  align-items: stretch;
  margin-bottom: 18px;
  padding: 18px;
  background: #fff;
  border: 1px solid var(--line);
  border-radius: var(--radius-md);
  box-shadow: var(--shadow-sm);
}
.profile-hero__info { grid-area: info; min-width: 0; }
.profile-hero__info h1 { display: flex; align-items: center; gap: 8px; margin: 0 0 12px; color: var(--navy-900); font-size: clamp(22px, 2.2vw, 31px); }
.profile-hero__info h1 img { width: 18px; height: 18px !important; }
.profile-hero__avatar { grid-area: avatar; display: grid; place-items: center; }
.profile-hero__avatar > a { display: block; line-height: 0; border-radius: 50%; }
.profile-hero__avatar > img,
.profile-hero__avatar > a > img { width: 150px; height: 150px !important; object-fit: cover; border-radius: 50%; background: var(--blue-100); border: 5px solid #fff; box-shadow: 0 0 0 1px var(--line); }
.profile-media { grid-area: media; display: grid; align-content: center; gap: 8px; }
.profile-media a { display: flex; align-items: center; gap: 9px; min-height: 44px; padding: 8px 10px; color: var(--navy-900); background: var(--surface-soft); border: 1px solid var(--line); border-radius: 9px; }
.profile-media img { flex: 0 0 auto; width: 32px; height: 32px !important; object-fit: contain; }
.profile-facts { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1px; margin: 0; overflow: hidden; background: var(--line); border: 1px solid var(--line); border-radius: 10px; }
.profile-facts > div { min-width: 0; padding: 8px 10px; background: #fff; }
.profile-facts dt { color: var(--ink-500); font-size: 12px; }
.profile-facts dd { margin: 1px 0 0; color: var(--ink-900); font-weight: 650; }
.profile-fact--residence { display: none; }
.profile-contact-section { display: contents; }
.profile-report { display: flex; justify-content: flex-end; margin: 14px 0; }
.profile-report a { display: inline-flex; align-items: center; gap: 7px; min-height: 42px; padding: 7px 11px; color: var(--danger); background: #fff5f6; border: 1px solid #f3c3cb; border-radius: 9px; }
.profile-report img { width: 24px; height: 24px !important; }
.profile-actions { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.profile-actions a { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 8px; min-width: 0; min-height: 132px; padding: 12px 8px; color: var(--navy-900); font-weight: 700; text-align: center; background: #fff; border: 1px solid var(--line); border-radius: var(--radius-md); box-shadow: var(--shadow-sm); }
.profile-actions img { width: auto; max-width: 72px; height: 64px !important; object-fit: contain; }

.page-profile .usual ul,
.page-profile #usual2 > ul {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin: 0;
  padding: 14px;
  background: var(--navy-900);
  list-style: none;
}

.page-profile .usual ul a,
.page-profile #usual2 > ul a {
  display: block;
  padding: 9px 12px;
  color: var(--navy-900);
  background: var(--blue-100);
  border: 1px solid #bddcf8;
  border-radius: 999px;
}

.page-profile #usual2 > ul a.selected,
.page-profile #usual2 > ul a:hover,
.page-profile #usual2 > ul a:focus-visible {
  color: #fff;
  background: var(--pink-600);
  border-color: var(--pink-600);
}

.page-profile #usual2 > div[id^="tabs"] {
  min-width: 0;
  padding: 14px;
  background: #fff;
}

.page-content .site-main { font-size: 16px; }
.page-content .site-main p { max-width: 78ch; }
.seo-profile { min-width: 0; padding: clamp(16px, 3vw, 42px); }
.seo-profile > h1 { margin-top: 0; color: var(--navy-900); }
.seo-back-link a { display: inline-flex; min-height: 42px; align-items: center; padding: 7px 13px; color: #fff; background: var(--blue-600); border-radius: 9px; }
.seo-users-list { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 8px; }
.seo-users-list a { display: block; min-width: 0; padding: 9px 11px; overflow: hidden; color: var(--navy-900); text-overflow: ellipsis; white-space: nowrap; background: #fff; border: 1px solid var(--line); border-radius: 8px; }

@media (max-width: 1050px) {
  .profile-hero { grid-template-columns: minmax(0, 1fr) 150px; grid-template-areas: "info avatar" "media media"; }
  .profile-media { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

/* Account dashboard */
.account-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
}

.account-tile {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 12px;
  min-width: 0;
  min-height: 190px;
  padding: 18px 12px;
  color: var(--navy-900) !important;
  font-weight: 750;
  text-align: center;
  background: #fff;
  border: 1px solid var(--line);
  border-radius: var(--radius-md);
  box-shadow: var(--shadow-sm);
}

.account-tile:hover { border-color: #8cc8fb; box-shadow: var(--shadow-md); transform: translateY(-1px); }
.account-tile img { width: auto; max-width: 112px; height: 88px !important; object-fit: contain; }
.account-tile--danger { color: var(--danger) !important; }

/* Compact account summary */
.account-welcome {
  display: grid;
  grid-template-columns: minmax(210px, 1.2fr) minmax(130px, .75fr) minmax(210px, 1.2fr) minmax(145px, .85fr);
  margin: 6px 0 22px;
  overflow: hidden;
  color: var(--navy-900);
  background: #fff;
  border: 1px solid var(--line);
  border-radius: var(--radius-md);
  box-shadow: var(--shadow-sm);
}

.account-welcome__item {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  min-width: 0;
  min-height: 56px;
  padding: 9px 12px;
  font-size: 13px;
  text-align: center;
  border-inline-end: 1px solid var(--line);
}

.account-welcome__item:last-child { border-inline-end: 0; }
.account-welcome__item span { color: var(--ink-500); white-space: nowrap; }
.account-welcome__item strong { color: var(--navy-900); overflow-wrap: anywhere; }
.account-welcome__identity strong { font-size: 14px; }
.account-welcome__link { color: var(--blue-600) !important; font-weight: 800; }
.account-welcome__membership { background: var(--blue-100); }
.account-welcome__membership strong { color: var(--pink-600); }

/* Messages */
.page-account-messages .site-main {
  --message-radius: 16px;
  --message-border: #d7e3f0;
}

.mailbox-shortcuts {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
  width: min(100%, 720px);
  margin: 2px auto 26px;
}

.mailbox-shortcut {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
  min-width: 0;
  min-height: 116px;
  padding: 14px 20px;
  overflow: hidden;
  color: var(--navy-900) !important;
  font-size: 16px;
  font-weight: 800;
  line-height: 1.5;
  background: linear-gradient(145deg, #fff 0%, #f5f9fe 100%);
  border: 1px solid var(--message-border);
  border-radius: var(--message-radius);
  box-shadow: var(--shadow-sm);
}

.mailbox-shortcut::before {
  position: absolute;
  inset-block: 0;
  inset-inline-start: 0;
  width: 4px;
  content: "";
  background: linear-gradient(180deg, var(--blue-500), var(--blue-600));
}

.mailbox-shortcut:hover {
  color: var(--navy-900) !important;
  border-color: #9bcdf8;
  box-shadow: 0 8px 22px rgba(6, 29, 59, .1);
}

.mailbox-shortcut img {
  flex: 0 0 auto;
  width: 66px;
  height: 66px !important;
  object-fit: contain;
}

.mailbox-shortcut span { min-width: 0; text-align: center; }
.mailbox-shortcut b { color: var(--pink-600); }

.page-account-messages .messages-form {
  width: 100%;
  min-width: 0;
}

.message-table {
  width: 100%;
  table-layout: auto;
  overflow: hidden;
  background: #fff;
  border: 1px solid var(--message-border);
  border-collapse: separate !important;
  border-spacing: 0;
  border-radius: var(--message-radius);
  box-shadow: var(--shadow-sm);
}

.message-table caption {
  padding: 15px 18px;
  color: #fff;
  font-size: 18px;
  font-weight: 800;
  line-height: 1.5;
  text-align: right;
  background: linear-gradient(135deg, var(--navy-900), var(--blue-600));
}

.message-table th {
  padding: 11px 13px;
  color: var(--ink-700);
  font-size: 13px;
  font-weight: 800;
  text-align: right;
  background: #f2f7fc;
  border: 0;
  border-bottom: 1px solid var(--message-border);
}

.message-table td {
  padding: 13px;
  color: var(--ink-700);
  font-size: 14px;
  line-height: 1.55;
  text-align: right;
  background: #fff;
  border: 0;
  border-bottom: 1px solid #e6edf5;
}

.message-table tbody tr:last-child td { border-bottom: 0; }
.message-table th:first-child,
.message-table td:first-child {
  width: 74px;
  text-align: center;
}
.message-table th:nth-child(2),
.message-table td:nth-child(2) {
  width: auto;
  min-width: 220px;
  text-align: right;
}
.message-table th:nth-child(3),
.message-table td:nth-child(3) { width: 22%; }
.message-table th:nth-child(4),
.message-table td:nth-child(4) {
  width: 150px;
  white-space: nowrap;
}
.message-table td:nth-child(2) a {
  color: var(--navy-800);
  font-weight: 800;
}
.message-table .message-read td { background: #f8fafc; }
.message-table .message-unread td {
  color: var(--ink-900);
  background: #fff;
  font-weight: 750;
}
.message-table .message-unread td:first-child {
  border-inline-start: 4px solid var(--pink-600);
}
.message-table tbody tr:hover td { background: #f1f7fd; }
.message-table input[type="checkbox"] {
  width: 19px;
  height: 19px;
  margin: 0;
  accent-color: var(--blue-600);
}

.message-bulk-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  gap: 9px;
  margin-top: 14px;
}
.message-bulk-actions .sub-button {
  min-height: 40px;
  padding: 7px 15px;
  font-size: 13px;
}
.message-bulk-actions .sub-button:first-child {
  color: var(--navy-800);
  background: #fff;
  border-color: #b7cae0;
}
.message-bulk-actions .sub-button:last-child {
  background: var(--pink-600);
  border-color: var(--pink-600);
}

.new-message-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(220px, 250px);
  gap: 18px;
  align-items: start;
}
.new-message-editor,
.message-recipient {
  overflow: hidden;
  background: #fff;
  border: 1px solid var(--message-border);
  border-radius: var(--message-radius);
  box-shadow: var(--shadow-sm);
}
.new-message-editor h2,
.message-recipient h3 {
  margin: 0;
  padding: 13px 17px;
  color: #fff;
  font-size: 17px;
  line-height: 1.5;
  background: linear-gradient(135deg, var(--navy-900), var(--navy-800));
}
.form-row {
  display: grid;
  grid-template-columns: 142px minmax(0, 1fr);
  align-items: center;
  gap: 14px;
  padding: 13px 17px;
  border-bottom: 1px solid var(--line);
}
.form-row--stack { grid-template-columns: minmax(0, 1fr); }
.form-row--message { align-items: start; }
.page-account .site-main .new-message-form .form-row input[type="text"],
.page-account .site-main .new-message-form .form-row textarea {
  width: 100% !important;
  max-width: none;
  padding: 10px 12px;
  border-color: #b8c9dc;
  border-radius: 10px;
}
.page-account .site-main .new-message-form .form-row input[type="text"] {
  min-height: 46px;
}
.page-account .site-main .new-message-form .form-row textarea {
  min-height: 220px;
  line-height: 1.75;
}
.page-account .site-main .new-message-form .form-row input[type="text"]:focus,
.page-account .site-main .new-message-form .form-row textarea:focus {
  border-color: var(--blue-600);
  outline: 3px solid rgba(14, 124, 231, .13);
  outline-offset: 0;
}
.form-label { color: var(--navy-900); font-weight: 750; }
.message-recipient {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 9px;
  padding-bottom: 18px;
  text-align: center;
}
.message-recipient h3 { align-self: stretch; }
.message-recipient > a:first-of-type {
  margin-top: 3px;
  font-size: 15px;
  font-weight: 800;
}
.message-recipient__avatar {
  display: block;
  width: 96px;
  height: 96px !important;
  object-fit: cover;
  border: 3px solid #fff;
  border-radius: 50%;
  box-shadow: 0 0 0 1px var(--message-border), var(--shadow-sm);
}
.form-actions {
  display: flex;
  justify-content: center;
  margin-top: 16px;
}
.new-message-form .form-actions .sub-button {
  min-width: 180px;
  min-height: 46px;
  padding: 9px 20px;
  font-size: 15px;
  border-radius: 10px;
}

.message-details {
  table-layout: fixed;
  overflow: hidden;
  background: #fff;
  border: 1px solid var(--message-border) !important;
  border-collapse: separate !important;
  border-spacing: 0;
  border-radius: var(--message-radius);
  box-shadow: var(--shadow-sm);
}

.message-view-layout {
  width: 100%;
  table-layout: auto !important;
  border-collapse: separate !important;
  border-spacing: 0;
}
.message-view-layout > tbody > tr {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(220px, 250px);
  align-items: start;
  gap: 18px;
  direction: rtl;
}
.message-view-layout > tbody > tr > td {
  display: block;
  width: auto !important;
  min-width: 0;
  direction: rtl;
}
.message-details tr:last-child td { border-bottom: 0; }
.message-details td {
  border-color: #e6edf5;
}

.message-details__label {
  width: 158px !important;
  padding: 11px 14px !important;
  color: var(--ink-700);
  font-size: 13px;
  white-space: nowrap;
  background: #eef5fd;
}

.message-details__value {
  padding: 11px 14px !important;
  font-size: 14px;
  overflow-wrap: anywhere;
}
.message-details__title {
  padding: 12px 15px !important;
  color: #fff;
  font-size: 16px;
  font-weight: 800;
  text-align: right;
  background: linear-gradient(135deg, var(--navy-900), var(--blue-600));
  border: 0 !important;
}
.message-details__body {
  min-height: 190px;
  padding: 20px !important;
  font-size: 15px;
  line-height: 2;
  text-align: right;
  vertical-align: top;
  white-space: normal;
  overflow-wrap: anywhere;
}

.message-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  gap: 9px;
  margin: 0 0 14px;
}
.message-actions--top { display: none !important; }
.message-actions--bottom { margin: 14px 0 0; }
.message-action {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  padding: 8px 15px;
  color: #fff !important;
  font-size: 13px;
  font-weight: 800;
  line-height: 1.4;
  border: 1px solid transparent;
  border-radius: 10px;
}
.message-action--reply {
  background: linear-gradient(135deg, var(--navy-800), var(--blue-600));
}
.message-action--delete {
  background: var(--pink-600);
  border-color: var(--pink-600);
}
.message-action--block {
  color: var(--navy-900) !important;
  background: #fff;
  border-color: var(--message-border);
}
.message-action:hover { color: #fff !important; }
.message-action--block:hover { color: var(--navy-900) !important; background: #f5f8fc; }
.message-action > img { display: none; }
.message-action > span { display: inline; }

.message-view-layout__sender > .message-sender-card { display: none; }
.message-sender-card-mobile {
  display: grid;
  grid-template-columns: 72px minmax(0, 1fr);
  align-items: center;
  gap: 12px;
  width: 100%;
  min-width: 0;
  padding: 13px;
  overflow: hidden;
  direction: rtl;
  background: linear-gradient(145deg, #fff, #f6faff);
  border: 1px solid var(--message-border);
  border-radius: var(--message-radius);
  box-shadow: var(--shadow-sm);
}
.message-sender-card-mobile__avatar {
  display: block;
  width: 72px;
  height: 72px;
  overflow: hidden;
  border: 1px solid #cfe0f1;
  border-radius: 50%;
  background: var(--surface-soft);
}
.message-sender-card-mobile__avatar img {
  display: block;
  width: 72px;
  height: 72px !important;
  object-fit: cover;
}
.message-sender-card-mobile__info {
  display: grid;
  gap: 4px;
  min-width: 0;
}
.message-sender-card-mobile__eyebrow,
.message-sender-card-mobile__label {
  color: var(--ink-500);
  font-size: 11px;
  font-weight: 700;
  line-height: 1.4;
}
.message-sender-card-mobile__name {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  min-width: 0;
  font-size: 15px;
  font-weight: 800;
  line-height: 1.45;
  overflow-wrap: anywhere;
}
.message-sender-card-mobile__name img {
  flex: 0 0 auto;
  width: 19px;
  height: 18px !important;
  object-fit: contain;
}
.message-sender-card-mobile__value {
  min-width: 0;
  color: var(--navy-900);
  font-size: 12px;
  line-height: 1.45;
  overflow-wrap: anywhere;
}

/* Pager */
.pagestd, .pages {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 36px;
  min-height: 36px;
  margin: 3px;
  padding: 4px 9px;
  color: #fff;
  background: var(--blue-600);
  border: 1px solid var(--blue-600);
  border-radius: 7px;
}

/* Footer */
.site-footer { clear: both; color: #fff; background: var(--navy-950); }
.footer-links {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 10px 20px;
  padding: 12px 20px;
  background: var(--pink-600);
}
.footer-links a { color: #fff !important; }
.footer-main {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  min-height: 84px;
  padding: 20px clamp(18px, 3vw, 42px);
}
.footer-copyright { text-align: right; }

/* Medium screens */
@media (max-width: 1199px) {
  .site-layout.has-two-sidebars {
    grid-template-columns: minmax(230px, 280px) minmax(0, 1fr);
    grid-template-areas: "right main" "left main";
  }
  .member-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .account-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media (max-width: 899px) {
  .site-layout.no-sidebars {
    grid-template-columns: minmax(0, 1fr);
    grid-template-areas: "main";
  }

  .site-layout.has-right-sidebar {
    grid-template-columns: minmax(112px, 32vw) minmax(0, 1fr);
    grid-template-areas: "right main";
  }

  .site-layout.has-left-sidebar {
    grid-template-columns: minmax(0, 1fr) minmax(112px, 32vw);
    grid-template-areas: "main left";
  }

  .site-layout.has-two-sidebars {
    grid-template-columns: minmax(112px, 32vw) minmax(0, 1fr);
    grid-template-areas: "right main" "left main";
  }

  .site-sidebar { width: 100%; }
  .BlocksCont { max-width: none; }
}

/* Mobile navigation and page layouts */
@media (max-width: 767px) {
  .registration-start {
    gap: 12px;
    margin: 0;
  }
  .registration-terms-card,
  .registration-type-card {
    border-radius: 15px;
    box-shadow: 0 5px 18px rgba(7, 43, 83, .06);
  }
  .registration-card-heading { padding: 15px; }
  .registration-card-heading__eyebrow,
  .registration-type-heading__step {
    min-height: 23px;
    padding: 2px 8px;
    font-size: 10.5px;
  }
  .registration-card-heading h2 {
    margin-top: 7px;
    font-size: 19px;
  }
  .registration-card-heading p {
    font-size: 12px;
    line-height: 1.65;
  }
  .registration-terms-content {
    max-height: 220px;
    padding: 14px 14px 12px;
    font-size: 13.5px;
    line-height: 1.8;
  }
  .registration-terms-content h2 {
    gap: 7px;
    margin-bottom: 7px;
    font-size: 16px;
  }
  .registration-terms-content h2:not(:first-child) { margin-top: 16px; }
  .registration-terms-content h2::before { width: 4px; height: 19px; }
  .registration-terms-content ul {
    gap: 5px;
    padding-right: 19px;
  }
  .registration-terms-content li {
    padding-inline-start: 2px;
    line-height: 1.75;
  }
  .registration-consent {
    grid-template-columns: 23px minmax(0, 1fr);
    gap: 9px;
    padding: 12px 13px;
  }
  .registration-consent__control { width: 21px; height: 21px; border-radius: 6px; }
  .registration-consent input:checked + .registration-consent__control::after {
    top: 2px;
    right: 6px;
  }
  .registration-consent__copy strong { font-size: 13px; }
  .registration-consent__copy small { font-size: 10.5px; }
  .registration-terms-details summary {
    min-height: 42px;
    padding: 8px 13px;
    font-size: 12px;
  }
  .registration-terms-details summary::after {
    width: 22px;
    height: 22px;
    font-size: 16px;
  }
  .registration-type-card { width: 100%; }
  .registration-type-heading { padding: 13px 12px 11px; }
  .registration-type-heading h2 {
    margin: 5px 0 2px;
    font-size: 18px;
  }
  .registration-type-heading p { font-size: 11.5px; }
  .registration-type-grid {
    gap: 8px;
    padding: 10px;
  }
  .registration-type-option {
    grid-template-columns: minmax(0, 1fr);
    grid-template-rows: auto auto;
    gap: 7px;
    justify-items: center;
    min-height: 120px;
    padding: 9px 7px 8px;
    text-align: center;
    border-radius: 12px;
  }
  .registration-type-option__avatar {
    width: 58px;
    height: 58px;
  }
  .registration-type-option__avatar img {
    width: 52px;
    height: 52px !important;
  }
  .registration-type-option__copy { gap: 1px; }
  .registration-type-option__copy small { font-size: 9.5px; }
  .registration-type-option__copy strong { font-size: 13.5px; }
  .registration-type-option__arrow { display: none; }

  html {
    scroll-padding-top: calc(67px + env(safe-area-inset-top, 0px));
  }
  .site-header {
    padding-top: calc(59px + env(safe-area-inset-top, 0px));
  }
  .primary-nav {
    position: fixed;
    z-index: 60;
    inset-inline: 0;
    top: 0;
    min-height: 54px;
    padding-top: env(safe-area-inset-top, 0px);
    transform: translateY(0);
    transition: transform .22s ease;
    will-change: transform;
  }
  .primary-nav.is-scroll-hidden {
    pointer-events: none;
    transform: translateY(calc(-100% - 2px));
  }
  .primary-nav .nav-bar {
    display: grid;
    grid-template-columns: minmax(76px, .68fr) minmax(0, 1.7fr) 48px;
    grid-template-areas: "home account site";
    direction: rtl;
    align-items: stretch;
    gap: 6px;
    min-height: 54px;
    padding: 6px 8px;
  }
  .primary-nav .mobile-header-action {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    min-width: 0;
    min-height: 42px !important;
    padding: 6px 8px !important;
    color: #fff;
    font-family: inherit;
    font-size: clamp(10.5px, 3vw, 12.5px);
    font-weight: 800;
    line-height: 1.35;
    white-space: nowrap;
    background: rgba(255, 255, 255, .08) !important;
    border: 1px solid rgba(255, 255, 255, .32) !important;
    border-radius: 10px;
  }
  .primary-nav .mobile-header-action[aria-expanded="true"] {
    background: var(--blue-600) !important;
    border-color: #8ac8ff !important;
  }
  .mobile-header-action__icon { flex: 0 0 auto; font-size: 16px; line-height: 1; }
  .mobile-home-link {
    grid-area: home;
    font-size: clamp(10.5px, 2.8vw, 12px) !important;
    text-decoration: none;
  }
  .mobile-home-link__icon {
    display: inline-grid;
    place-items: center;
  }
  .mobile-home-link__icon svg {
    display: block;
    width: 15px;
    height: 15px;
  }
  .mobile-messages-link[hidden] {
    display: none !important;
  }
  .mobile-messages-link {
    position: relative;
    grid-area: messages;
    gap: 3px !important;
    padding-inline: 5px !important;
    text-decoration: none;
  }
  .mobile-messages-link__icon {
    display: inline-grid;
    place-items: center;
  }
  .mobile-messages-link__icon svg {
    display: block;
    width: 18px;
    height: 18px;
  }
  .mobile-messages-link__badge {
    display: inline-grid;
    place-items: center;
    min-width: 18px;
    height: 18px;
    padding: 0 4px;
    color: #fff;
    font-size: 9.5px;
    font-weight: 850;
    line-height: 1;
    background: var(--pink-600);
    border-radius: 999px;
  }
  .primary-nav .mobile-site-trigger {
    grid-area: site;
    gap: 0;
    padding-inline: 5px !important;
    font-size: 20px;
  }
  .mobile-header-action > span:last-child { min-width: 0; overflow: hidden; text-overflow: ellipsis; }
  .primary-nav .mobile-account-trigger {
    grid-area: account;
    white-space: normal;
  }
  .primary-nav .nav-bar.is-authenticated {
    grid-template-columns: minmax(72px, .68fr) 52px minmax(0, 1.45fr) 46px;
    grid-template-areas: "home messages account site";
  }
  .primary-nav .nav-bar.is-authenticated .mobile-account-trigger {
    font-size: clamp(11px, 3.2vw, 13px);
  }
  .mobile-account-trigger > span:last-child { overflow: visible; text-overflow: clip; }
  .primary-nav > ul {
    display: none !important;
  }
  .site-layout { gap: 9px; padding: 12px 7px 20px; }
  .page-home .site-layout { padding-top: 14px; }
  .site-layout.has-right-sidebar,
  .site-layout.has-two-sidebars {
    grid-template-columns: minmax(0, 1fr);
    grid-template-areas: "main";
  }
  .site-layout.has-two-sidebars .site-sidebar-left { display: none !important; }
  body.mobile-panel-open { overflow: hidden; }
  .mobile-panel-backdrop {
    position: fixed;
    z-index: 70;
    inset: 0;
    width: 100%;
    height: 100%;
    min-height: 0 !important;
    padding: 0 !important;
    background: rgba(6, 29, 59, .5) !important;
    border: 0 !important;
    border-radius: 0;
    opacity: 0;
    pointer-events: none;
    transition: none;
  }
  .mobile-panel-backdrop.is-visible {
    display: block;
    opacity: 1;
    pointer-events: auto;
  }
  .site-sidebar-right {
    position: fixed;
    z-index: 80;
    inset-block: 0;
    inset-inline-end: 0;
    display: none !important;
    width: min(88vw, 360px) !important;
    max-width: 100%;
    height: 100vh;
    height: 100dvh;
    padding: 0 10px 22px;
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior: contain;
    background: var(--surface-soft);
    box-shadow: -16px 0 42px rgba(6, 29, 59, .22);
    transform: none;
    visibility: visible;
    transition: none;
    -webkit-overflow-scrolling: touch;
  }
  .site-sidebar-right.is-mobile-open {
    display: block !important;
  }
  .mobile-drawer-header {
    position: sticky;
    z-index: 2;
    top: 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    min-height: 58px;
    margin: 0 -10px 10px;
    padding: 8px 12px;
    color: #fff;
    background: linear-gradient(135deg, var(--navy-900), var(--blue-600));
    box-shadow: 0 2px 10px rgba(6, 29, 59, .13);
  }
  .mobile-drawer-title { min-width: 0; font-size: 15px; overflow-wrap: anywhere; }
  .mobile-drawer-close {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 38px;
    width: 38px;
    min-height: 38px !important;
    padding: 0 !important;
    color: #fff;
    font-size: 26px;
    line-height: 1;
    background: rgba(255, 255, 255, .12) !important;
    border: 1px solid rgba(255, 255, 255, .4) !important;
    border-radius: 9px;
  }
  .site-sidebar-right .BlocksCont { display: none; margin-bottom: 10px; }
  .site-sidebar-right[data-mobile-panel="site"] .mobile-panel-block--site,
  .site-sidebar-right[data-mobile-panel="account"] .mobile-panel-block--account { display: block; }
  .site-sidebar-right.is-mobile-open .blk1-head_outer,
  .site-sidebar-right.is-mobile-open .blk2-head_outer,
  .site-sidebar-right.is-mobile-open .blk3-head_outer,
  .site-sidebar-right.is-mobile-open .blk4-head_outer,
  .site-sidebar-right.is-mobile-open .blk1-footer,
  .site-sidebar-right.is-mobile-open .blk2-footer,
  .site-sidebar-right.is-mobile-open .blk3-footer,
  .site-sidebar-right.is-mobile-open .blk4-footer { display: none; }
  .site-sidebar-right.is-mobile-open .blk1-body_outer,
  .site-sidebar-right.is-mobile-open .blk2-body_outer,
  .site-sidebar-right.is-mobile-open .blk3-body_outer,
  .site-sidebar-right.is-mobile-open .blk4-body_outer { overflow: visible; border-radius: 12px; box-shadow: var(--shadow-sm); }
  .site-sidebar-right.is-mobile-open .blk1-body_in,
  .site-sidebar-right.is-mobile-open .blk2-body_in,
  .site-sidebar-right.is-mobile-open .blk3-body_in,
  .site-sidebar-right.is-mobile-open .blk4-body_in { padding: 12px; }
  .site-sidebar-right.is-mobile-open .sidebar-menu a { min-height: 44px; padding: 8px 10px; font-size: 13px; }
  .site-sidebar-right.is-mobile-open .sidebar-login-form__field > span,
  .site-sidebar-right.is-mobile-open .sidebar-login-form__remember,
  .site-sidebar-right.is-mobile-open .sidebar-login-form__recover,
  .site-sidebar-right.is-mobile-open .sidebar-login-form__register { font-size: 12px; }
  .site-sidebar-right.is-mobile-open .sidebar-login-form__register {
    display: block;
    margin-top: 8px;
    padding: 9px 10px;
    color: var(--navy-900);
    font-weight: 800;
    text-align: center;
    background: var(--blue-100);
    border: 1px solid #badcfb;
    border-radius: 9px;
  }

  /* Mobile profile: keep the legacy tab panel out of a large clipped paint layer. */
  body.page-profile { touch-action: pan-y; }
  .page-profile .usual,
  .page-profile #usual2 { overflow: visible; }
  .page-profile .usual > ul,
  .page-profile #usual2 > ul { border-radius: var(--radius-md) var(--radius-md) 0 0; }
  .page-profile .usual > div[id^="tabs"],
  .page-profile #usual2 > div[id^="tabs"] { border-radius: 0 0 var(--radius-md) var(--radius-md); }
  .page-profile .site-container,
  .page-profile .profile-hero,
  .page-profile .profile-actions a { box-shadow: none; }
  .page-profile .site-main a { transition: none !important; }

  /* The closed drawer is not painted, and the legacy profile plugins do not track mobile scrolling. */
  .site-sidebar .BlocksCont { margin-bottom: 10px; }
  .site-sidebar .blk1-head_outer,
  .site-sidebar .blk2-head_outer,
  .site-sidebar .blk3-head_outer,
  .site-sidebar .blk4-head_outer,
  .site-sidebar .blk1-head_in,
  .site-sidebar .blk2-head_in,
  .site-sidebar .blk3-head_in,
  .site-sidebar .blk4-head_in { min-height: 42px; }
  .site-sidebar .blk1-head_in,
  .site-sidebar .blk2-head_in,
  .site-sidebar .blk3-head_in,
  .site-sidebar .blk4-head_in { padding: 7px 8px; font-size: 13px; text-align: right; }
  .site-sidebar .blk1-body_in,
  .site-sidebar .blk2-body_in,
  .site-sidebar .blk3-body_in,
  .site-sidebar .blk4-body_in { padding: 10px 7px 13px; font-size: 12px; }
  .site-sidebar .sidebar-menu__intro,
  .site-sidebar .sidebar-login-form__intro { display: none; }
  .site-sidebar .sidebar-menu ul { gap: 4px; }
  .site-sidebar .sidebar-menu a { min-height: 38px; padding: 6px; font-size: 11px; overflow-wrap: normal; }
  .site-sidebar .sidebar-menu a::after { display: none; }
  .site-sidebar .sidebar-account-menu img { width: 18px; height: 18px !important; }
  .site-sidebar .sidebar-menu__badge { min-width: 20px; height: 20px; padding: 0 4px; font-size: 10px; }
  .site-sidebar .sidebar-login-form { gap: 8px; }
  .site-sidebar .sidebar-login-form__field > span,
  .site-sidebar .sidebar-login-form__remember,
  .site-sidebar .sidebar-login-form__recover { font-size: 10px; }
  .site-sidebar input[type="text"],
  .site-sidebar input[type="password"],
  .site-sidebar input[type="email"],
  .site-sidebar select,
  .site-sidebar textarea { min-height: 36px; padding: 6px; font-size: 12px; }
  .site-sidebar input[type="submit"],
  .site-sidebar input[type="button"],
  .site-sidebar button { min-height: 36px; padding: 6px 8px; font-size: 12px; }
  .cent { min-height: 52px; border-radius: 11px 11px 0 0; }
  .centhead { min-height: 52px; padding: 10px 14px; font-size: 19px; }
  .centimg1--member-filter { gap: 4px; }
  .centimg1--member-filter > .member-filter {
    gap: 4px;
    margin-inline-end: 10px;
  }
  body.theme-noimages-3 .centimg1--member-filter .member-filter button {
    min-width: 0;
    min-height: 30px;
    padding: 4px 8px;
    font-size: 10.5px;
  }
  .centervalue { padding: 10px; }
  .footer-main { flex-direction: column; align-items: stretch; text-align: center; }
  .footer-copyright { text-align: center; }
  .account-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 9px; }
  .account-tile { min-height: 145px; padding: 12px 7px; font-size: 12px; }
  .account-tile img { max-width: 78px; height: 66px !important; }

  .account-welcome {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin: 2px 0 16px;
    border-radius: 11px;
  }
  .account-welcome__item {
    min-height: 44px;
    padding: 6px 8px;
    font-size: 11.5px;
    border-inline-end: 0;
    border-bottom: 1px solid var(--line);
  }
  .account-welcome__identity {
    grid-column: 1 / -1;
    min-height: 50px;
    background: var(--surface-soft);
  }
  .account-welcome__identity strong { font-size: 12.5px; }
  .account-welcome__last-login {
    grid-column: 1 / -1;
    border-bottom: 0;
  }
  .account-welcome__membership { border-inline-start: 1px solid var(--line); }

  /* Message pages only: retain the useful membership status and remove repeated account details. */
  .page-account-messages .account-welcome {
    display: block;
    margin: 0 0 10px;
    overflow: visible;
    background: transparent;
    border: 0;
    border-radius: 0;
    box-shadow: none;
  }
  .page-account-messages .account-welcome__identity,
  .page-account-messages .account-welcome__link,
  .page-account-messages .account-welcome__last-login {
    display: none;
  }
  .page-account-messages .account-welcome__membership {
    display: flex;
    justify-content: space-between;
    min-height: 40px;
    padding: 7px 12px;
    font-size: 12px;
    background: var(--blue-100);
    border: 1px solid #cfe3f8;
    border-radius: 10px;
  }
  .page-account-messages .account-welcome__membership span,
  .page-account-messages .account-welcome__membership strong {
    white-space: nowrap;
    overflow-wrap: normal;
    word-break: normal;
  }

  /* Membership comparison page only: show the current membership without repeated account details. */
  .page-membership-comparison .account-welcome {
    display: block;
    margin: 0 0 10px;
    overflow: visible;
    background: transparent;
    border: 0;
    border-radius: 0;
    box-shadow: none;
  }
  .page-membership-comparison .account-welcome__identity,
  .page-membership-comparison .account-welcome__link,
  .page-membership-comparison .account-welcome__last-login {
    display: none;
  }
  .page-membership-comparison .account-welcome__membership {
    display: flex;
    justify-content: space-between;
    min-height: 40px;
    padding: 7px 12px;
    font-size: 12px;
    background: var(--blue-100);
    border: 1px solid #cfe3f8;
    border-radius: 10px;
  }
  .page-membership-comparison .account-welcome__membership span,
  .page-membership-comparison .account-welcome__membership strong {
    white-space: nowrap;
    overflow-wrap: normal;
    word-break: normal;
  }

  .mailbox-shortcuts {
    gap: 8px;
    width: 100%;
    margin: 2px auto 16px;
  }
  .page-account-messages .mailbox-shortcuts { margin-top: 0; }
  .mailbox-shortcut {
    flex-direction: column;
    gap: 4px;
    min-height: 86px;
    padding: 8px 6px;
    font-size: 12.5px;
    line-height: 1.45;
    background: linear-gradient(180deg, #fff, #f8fbff);
    border-radius: 12px;
    box-shadow: none;
  }
  .mailbox-shortcut img { width: 46px; height: 46px !important; }

  .page-account .messages-form {
    min-width: 0;
    font-size: 13px;
  }
  .message-table,
  .message-table tbody,
  .message-table tr,
  .message-table td {
    display: block;
    width: 100% !important;
    min-width: 0;
  }
  .message-table {
    table-layout: auto;
    border: 0;
    background: transparent;
  }
  .message-table caption {
    display: block;
    width: 100%;
    min-width: 0;
    margin: 0 0 8px;
    padding: 10px 12px;
    font-size: 15px;
    line-height: 1.4;
    white-space: nowrap;
    overflow-wrap: normal;
    word-break: normal;
    background: linear-gradient(135deg, var(--navy-900), var(--blue-600));
    border-radius: 10px;
  }
  .message-table thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0, 0, 0, 0); }
  .message-table tbody { display: grid; gap: 10px; }
  .message-table tr {
    overflow: hidden;
    background: #fff;
    border: 1px solid var(--line);
    border-radius: 11px;
    box-shadow: none;
  }
  .message-table tr.message-unread { border-inline-start: 3px solid var(--pink-600); }
  .message-table .message-unread td:first-child { border-inline-start: 0; }
  .message-table td {
    display: grid;
    grid-template-columns: 92px minmax(0, 1fr);
    align-items: center;
    gap: 8px;
    min-height: 40px;
    padding: 8px 9px;
    font-size: 13px;
    line-height: 1.55;
    text-align: right !important;
    overflow-wrap: normal;
    word-break: normal;
    border: 0;
    border-bottom: 1px solid var(--line);
  }
  .message-table td:last-child { border-bottom: 0; }
  .message-table td::before {
    content: attr(data-label);
    color: var(--ink-500);
    font-size: 11.5px;
    font-weight: 700;
    line-height: 1.4;
    white-space: nowrap;
    overflow-wrap: normal;
    word-break: normal;
  }
  .message-table td > a {
    min-width: 0;
    font-size: 13px;
    line-height: 1.55;
    overflow-wrap: anywhere;
  }
  .message-table td > a:focus-visible {
    outline: 2px solid var(--blue-600);
    outline-offset: 2px;
    border-radius: 4px;
  }
  .message-table td input[type="checkbox"] {
    width: 18px;
    height: 18px;
    margin: 0;
  }
  .message-bulk-actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
    margin-top: 12px;
  }
  .message-bulk-actions .sub-button {
    width: 100%;
    min-height: 38px;
    padding: 7px 8px;
    font-size: 12px;
    white-space: normal;
  }
  .page-account-messages .site-main { touch-action: pan-y; }
  .page-account-messages .message-actions {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(118px, 1fr));
    gap: 8px;
    margin: 0 0 10px;
  }
  .page-account-messages .message-actions--bottom {
    display: grid;
    margin: 10px 0 0;
  }
  .page-account-messages .message-action {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 0;
    min-height: 42px;
    padding: 8px 11px;
    color: #fff !important;
    font-size: 13px;
    font-weight: 800;
    line-height: 1.4;
    text-align: center;
    border: 1px solid transparent;
    border-radius: 10px;
    box-shadow: none;
  }
  .page-account-messages .message-action--reply {
    background: linear-gradient(135deg, var(--navy-800), var(--blue-600));
  }
  .page-account-messages .message-action--delete { background: var(--pink-600); }
  .page-account-messages .message-action--block {
    color: var(--navy-900) !important;
    background: #fff;
    border-color: var(--line);
  }
  .page-account-messages .message-action > img { display: none; }
  .page-account-messages .message-action > span { display: inline; }

  .message-view-layout,
  .message-view-layout > tbody,
  .message-view-layout > tbody > tr,
  .message-view-layout > tbody > tr > td {
    display: block;
    width: 100% !important;
    min-width: 0 !important;
  }
  .message-view-layout {
    table-layout: auto !important;
    border-spacing: 0;
  }
  .message-view-layout > tbody > tr > td + td { margin-top: 10px; }
  .message-details,
  .message-details > tbody {
    display: block;
    width: 100% !important;
    min-width: 0;
  }
  .message-details {
    table-layout: auto !important;
    overflow: hidden;
    font-size: 13px;
    background: #fff;
    border: 1px solid var(--line);
    border-radius: 12px;
    box-shadow: none;
  }
  .message-details > tbody > tr {
    display: grid;
    grid-template-columns: 92px minmax(0, 1fr);
    width: 100%;
    min-width: 0;
  }
  .message-details td {
    display: block;
    width: 100% !important;
    min-width: 0 !important;
    height: auto !important;
    border: 0;
    border-bottom: 1px solid var(--line);
  }
  .message-details__label {
    width: auto !important;
    min-width: 0 !important;
    padding: 9px 8px !important;
    color: var(--ink-500);
    font-size: 11.5px;
    font-weight: 700;
    line-height: 1.45;
    white-space: nowrap;
    background: var(--blue-100);
  }
  .message-details__value {
    padding: 9px 10px !important;
    font-size: 13px;
    line-height: 1.55;
    background: #fff;
  }
  .message-details__title {
    grid-column: 1 / -1;
    padding: 10px 12px !important;
    color: #fff;
    font-size: 14px;
    font-weight: 800;
    line-height: 1.45;
    background: linear-gradient(135deg, var(--navy-900), var(--blue-600));
  }
  .message-details__body {
    grid-column: 1 / -1;
    min-height: 0;
    padding: 14px 13px 16px !important;
    font-size: 14px;
    line-height: 1.9;
    background: #fff;
    border-bottom: 0 !important;
  }

  .message-view-layout__sender > .message-sender-card { display: none; }
  .message-sender-card-mobile {
    display: grid;
    grid-template-columns: 58px minmax(0, 1fr);
    align-items: center;
    gap: 9px;
    width: 100%;
    min-width: 0;
    padding: 8px;
    overflow: hidden;
    direction: rtl;
    background: #fff;
    border: 1px solid var(--line);
    border-radius: 12px;
    box-shadow: none;
  }
  .message-sender-card-mobile__avatar {
    display: block;
    width: 58px;
    height: 58px;
    overflow: hidden;
    border: 1px solid #cfe0f1;
    border-radius: 50%;
    background: var(--surface-soft);
  }
  .message-sender-card-mobile__avatar img {
    display: block;
    width: 58px;
    height: 58px !important;
    object-fit: cover;
  }
  .message-sender-card-mobile__info {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 3px 7px;
    min-width: 0;
  }
  .message-sender-card-mobile__eyebrow,
  .message-sender-card-mobile__label {
    color: var(--ink-500);
    font-size: 10.5px;
    font-weight: 700;
    line-height: 1.4;
    white-space: nowrap;
  }
  .message-sender-card-mobile__eyebrow { grid-column: 1 / -1; }
  .message-sender-card-mobile__name {
    grid-column: 1 / -1;
    display: inline-flex;
    align-items: center;
    gap: 5px;
    min-width: 0;
    font-size: 14px;
    font-weight: 800;
    line-height: 1.45;
    overflow-wrap: anywhere;
  }
  .message-sender-card-mobile__name img {
    flex: 0 0 auto;
    width: 19px;
    height: 18px !important;
    object-fit: contain;
  }
  .message-sender-card-mobile__value {
    min-width: 0;
    color: var(--navy-900);
    font-size: 12px;
    line-height: 1.45;
    overflow-wrap: anywhere;
  }
  .new-message-form {
    width: 100%;
    min-width: 0;
    -webkit-text-size-adjust: 100%;
  }
  .new-message-layout {
    grid-template-columns: minmax(0, 1fr);
    gap: 10px;
  }
  .new-message-editor { order: 2; }
  .new-message-editor h2, .message-recipient h3 { padding: 9px 11px; font-size: 14px; }
  .new-message-editor .form-row {
    grid-template-columns: minmax(0, 1fr);
    gap: 5px;
    padding: 9px 10px;
    font-size: 13px;
  }
  .new-message-editor .form-row--recipient { display: none; }
  .page-account .site-main .new-message-form .form-row input[type="text"],
  .page-account .site-main .new-message-form .form-row textarea {
    width: 100% !important;
    max-width: 100% !important;
    padding: 10px 11px;
    color: var(--ink-900);
    font-size: 16px !important;
    line-height: 1.55;
    background: #fff;
    border: 1px solid #b9cde0;
    border-radius: 10px;
    -webkit-appearance: none;
    appearance: none;
    touch-action: manipulation;
  }
  .page-account .site-main .new-message-form .form-row input[type="text"] {
    min-height: 44px;
  }
  .page-account .site-main .new-message-form .form-row textarea {
    min-height: 150px;
    resize: vertical;
    scroll-margin-bottom: 48vh;
  }
  .page-account .site-main .new-message-form .form-row input[type="text"]:focus,
  .page-account .site-main .new-message-form .form-row textarea:focus {
    border-color: var(--blue-600);
    outline: 3px solid rgba(14, 124, 231, .14);
    outline-offset: 0;
  }
  .new-message-form .form-actions {
    margin-top: 10px;
  }
  .new-message-form .form-actions .sub-button {
    width: min(100%, 260px);
    min-height: 46px;
    padding: 9px 16px;
    font-size: 15px;
  }
  .message-recipient {
    order: 1;
    display: grid;
    grid-template-columns: 58px minmax(0, 1fr);
    gap: 2px 9px;
    padding: 9px;
    text-align: right;
    border-inline-start: 3px solid var(--blue-600);
  }
  .message-recipient h3 {
    grid-column: 2;
    align-self: end;
    margin: 0;
    padding: 0;
    color: var(--ink-500);
    font-size: 10.5px;
    font-weight: 700;
    line-height: 1.4;
    background: transparent;
  }
  .message-recipient > a:first-of-type {
    grid-column: 2;
    align-self: center;
    min-width: 0;
    font-size: 15px;
    font-weight: 800;
    line-height: 1.4;
    overflow-wrap: anywhere;
  }
  .message-recipient > .member-card__flag {
    grid-column: 2;
    justify-self: start;
    width: 18px;
    height: 17px !important;
  }
  .message-recipient > a[aria-label] {
    grid-column: 1;
    grid-row: 1 / span 3;
    align-self: center;
  }
  .message-recipient__avatar {
    width: 58px;
    height: 58px !important;
    box-shadow: none;
  }

  /* Mobile-only paid plans comparison: free is already owned and is omitted. */
  .membership-comparison {
    width: 100% !important;
    table-layout: auto !important;
    overflow: visible;
    background: transparent;
    border: 0;
  }
  .membership-comparison__title {
    min-height: 46px;
    padding: 10px 12px;
    font-size: 16px;
    line-height: 1.5;
    text-align: center;
    border-radius: 10px;
  }
  .membership-comparison--compact .membership-comparison__body { display: none !important; }
  .membership-comparison-mobile {
    display: block;
    width: 100%;
    min-width: 0;
    margin: 10px 0 0;
    overflow: hidden;
    direction: rtl;
    background: #fff;
    border: 1px solid var(--line);
    border-radius: 11px;
    box-shadow: none;
  }
  .membership-comparison-mobile__heads,
  .membership-comparison-mobile__values {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    width: 100%;
    min-width: 0;
  }
  .membership-comparison-mobile__head {
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 0;
    min-height: 42px;
    padding: 8px 5px;
    color: #fff;
    font-size: 13.5px;
    font-weight: 800;
    line-height: 1.4;
    text-align: center;
    white-space: nowrap;
    overflow-wrap: normal;
    word-break: normal;
  }
  .membership-comparison-mobile__head--silver { background: var(--navy-800); }
  .membership-comparison-mobile__head--gold { background: var(--pink-600); }
  .membership-comparison-mobile__head + .membership-comparison-mobile__head { border-inline-start: 1px solid rgba(255, 255, 255, .55); }
  .membership-comparison-mobile__feature { margin: 0; border-bottom: 1px solid var(--line); }
  .membership-comparison-mobile__feature:last-child { border-bottom: 0; }
  .membership-comparison-mobile__label {
    min-height: 36px;
    margin: 0;
    padding: 7px 9px;
    color: var(--navy-900);
    font-size: 12px;
    font-weight: 750;
    line-height: 1.55;
    text-align: right;
    white-space: normal;
    overflow-wrap: normal;
    word-break: normal;
    background: var(--blue-100);
    border-bottom: 1px solid #fff;
  }
  .membership-comparison-mobile__value {
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 0;
    min-height: 40px;
    padding: 6px 5px;
    color: var(--ink-900);
    font-size: 12px;
    line-height: 1.45;
    text-align: center;
    white-space: normal;
    overflow-wrap: normal;
    word-break: normal;
    background: #fff;
  }
  .membership-comparison-mobile__value + .membership-comparison-mobile__value { border-inline-start: 1px solid var(--line); }
  .membership-comparison-mobile__value > img {
    width: 19px;
    max-width: 19px;
    height: 19px !important;
    object-fit: contain;
  }
  .membership-comparison-mobile__value > a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 0;
    max-width: 100%;
    min-height: 34px;
    padding: 3px;
  }
  .membership-comparison-mobile__value > a img {
    width: auto;
    max-width: 80px;
    height: auto !important;
  }

  .page-register .site-main form > table tr,
  .page-register .site-main form > div > table tr,
  .page-account .site-main form:not(.messages-form):not(.new-message-form) > table tr,
  .page-account .site-main form:not(.messages-form):not(.new-message-form) > div > table tr,
  .page-contact .site-main form > table tr {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
  }

  .page-search .site-main form > table > tbody > tr,
  .page-search .site-main form > table > tr {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
  }

  .page-search .site-main form > table > tbody > tr > td,
  .page-search .site-main form > table > tr > td {
    display: block;
    width: 100% !important;
    min-width: 0 !important;
    padding: 0;
  }

  .page-search .site-main form table table { width: 100% !important; table-layout: fixed; }

  .page-login .site-main form table tr { display: grid; grid-template-columns: minmax(0, 1fr); }
  .page-login .site-main form table td { display: block; width: 100% !important; min-width: 0 !important; height: auto !important; padding: 8px 10px; }

  .search-result-card__grid { grid-template-columns: minmax(0, 1fr); padding: 13px; }
  .search-result-card__details { grid-template-columns: minmax(0, 1fr); }
  .search-result-card__actions { grid-column: auto; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .search-result-card__actions a { justify-content: center; text-align: center; }

  .page-register .site-main form td,
  .page-account .site-main form:not(.messages-form):not(.new-message-form) td,
  .page-contact .site-main form td {
    display: block;
    width: 100% !important;
    min-width: 0 !important;
    height: auto !important;
    padding: 8px 10px;
  }

  .page-register .site-main form .r-td,
  .page-account .site-main form:not(.messages-form):not(.new-message-form) .r-td,
  .page-contact .site-main form .r-td { border-radius: 6px 6px 0 0; }

  .page-profile .site-main > table,
  .page-profile .centervalue > table,
  .page-account .site-main > table,
  .page-account .centervalue > table { width: 100% !important; table-layout: fixed; }

  .profile-hero {
    grid-template-columns: 72px minmax(0, 1fr);
    grid-template-areas: "avatar info" "media media";
    gap: 8px 10px;
    align-items: start;
    margin-bottom: 10px;
    padding: 9px;
    border-radius: 13px;
  }
  .profile-hero__info h1 {
    min-height: 30px;
    margin: 0 0 7px;
    font-size: 18px;
    line-height: 1.35;
  }
  .profile-hero__info h1 img { width: 16px; height: 16px !important; }
  .profile-hero__avatar { align-self: start; }
  .profile-hero__avatar > img,
  .profile-hero__avatar > a > img {
    width: 72px;
    height: 72px !important;
    border-width: 3px;
  }
  .profile-facts { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .profile-facts > div {
    grid-column: auto !important;
    min-height: 46px;
    padding: 5px 7px;
  }
  .profile-facts > div:last-child:nth-child(odd) { grid-column: 1 / -1 !important; }
  .profile-facts .profile-fact--nationality { grid-column: auto; }
  .profile-facts .profile-fact--residence {
    grid-column: auto;
    display: block;
    text-align: right;
  }
  .profile-fact--residence dd {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    margin-top: 2px;
  }
  .profile-fact--residence img { display: block; width: 26px; height: 26px !important; object-fit: contain; }
  .profile-facts dt { font-size: 10px; line-height: 1.35; }
  .profile-facts dd {
    margin-top: 1px;
    font-size: 11.5px;
    line-height: 1.45;
    overflow-wrap: normal;
    word-break: normal;
  }
  .profile-media {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 6px;
  }
  .profile-media a {
    min-height: 36px;
    padding: 5px 7px;
    font-size: 11.5px;
    line-height: 1.4;
  }
  .profile-media img { width: 26px; height: 26px !important; }
  .profile-contact-section {
    display: flex;
    flex-direction: column;
    gap: 7px;
  }
  .profile-actions {
    order: 1;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 6px;
  }
  .profile-actions .profile-action {
    min-height: 84px;
    padding: 8px 4px;
    gap: 5px;
    font-size: 11px;
    line-height: 1.4;
    border-radius: 11px;
  }
  .profile-actions .profile-action img {
    max-width: 38px;
    height: 36px !important;
  }
  .profile-report {
    order: 2;
    justify-content: flex-end;
    margin: 0;
  }
  .profile-report a {
    width: auto;
    min-height: 30px;
    padding: 4px 7px;
    color: var(--ink-500);
    font-size: 10px;
    font-weight: 500;
    background: #fff;
    border-color: var(--line);
    border-style: dashed;
    border-radius: 7px;
  }
  .profile-report img {
    width: 15px;
    height: 15px !important;
    opacity: .72;
  }
  .page-profile .usual,
  .page-profile #usual2 { margin: 10px 0 !important; border-radius: 13px; }
  .page-profile #usual2 + br,
  .page-profile #usual2 + br + br { display: none; }
  .page-profile #usual2 > ul {
    display: flex;
    flex-wrap: nowrap;
    gap: 6px;
    padding: 7px;
    overflow-x: auto;
    overscroll-behavior-x: contain;
    scrollbar-width: none;
    scroll-snap-type: x proximity;
  }
  .page-profile #usual2 > ul::-webkit-scrollbar { display: none; }
  .page-profile #usual2 > ul li {
    flex: 0 0 auto;
    min-width: 0;
    scroll-snap-align: start;
  }
  .page-profile #usual2 > ul a {
    min-height: 36px;
    padding: 6px 10px;
    font-size: 11.5px !important;
    line-height: 1.4;
    text-align: center;
    white-space: nowrap;
    border-radius: 9px;
  }
  .page-profile #usual2 > div[id^="tabs"] { padding: 6px; }
  .page-profile #usual2 > div[id^="tabs"] > br:first-child { display: none; }
  .page-profile #usual22 > ul {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 6px;
    padding: 7px;
  }
  .page-profile #usual22 > ul li { min-width: 0; }
  .page-profile #usual22 > ul a {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 38px;
    padding: 6px 7px;
    font-size: 11.5px !important;
    line-height: 1.4;
    text-align: center;
    border-radius: 9px;
  }
  .page-profile #usual22 > ul a.selected {
    color: #fff;
    background: var(--pink-600);
    border-color: var(--pink-600);
  }
  .page-profile #usual22 > div[id^="tabs"] {
    min-height: 0;
    padding: 11px 12px;
    font-size: 13px;
    line-height: 1.75;
  }
  .page-profile #usual22 > div[id^="tabs"] > br:first-child { display: none; }
  .page-profile #tabs1 table,
  .page-profile #tabs2 table,
  .page-profile #tabs3 table,
  .page-profile #tabs4 table {
    width: 100% !important;
    table-layout: fixed;
    border-collapse: collapse;
  }
  .page-profile #tabs1 table tr,
  .page-profile #tabs2 table tr,
  .page-profile #tabs3 table tr,
  .page-profile #tabs4 table tr {
    display: table-row;
  }
  .page-profile #tabs7 table tr,
  .page-profile #tabs8 table tr { display: grid; grid-template-columns: minmax(0, 1fr); }
  .page-profile #tabs1 table td,
  .page-profile #tabs2 table td,
  .page-profile #tabs3 table td,
  .page-profile #tabs4 table td {
    display: table-cell;
    min-width: 0 !important;
    height: auto !important;
    padding: 5px 7px;
    vertical-align: middle;
  }
  .page-profile #tabs7 table td,
  .page-profile #tabs8 table td { display: block; width: 100% !important; min-width: 0 !important; height: auto !important; padding: 8px 10px; }
  .page-profile #tabs1 table .r-td,
  .page-profile #tabs2 table .r-td,
  .page-profile #tabs3 table .r-td,
  .page-profile #tabs4 table .r-td { width: 38% !important; font-size: 11px; line-height: 1.4; }
  .page-profile #tabs1 table .l-td,
  .page-profile #tabs2 table .l-td,
  .page-profile #tabs3 table .l-td,
  .page-profile #tabs4 table .l-td { width: 62% !important; font-size: 12px; line-height: 1.45; }
  .page-profile #tabs1 #AutoNumber5 td.profile-residence-flag {
    display: none !important;
  }

  /* A quieter, modern mobile profile surface without changing component sizes. */
  body.page-profile {
    background: #f6f9fd;
  }
  .page-profile .profile-hero {
    background: linear-gradient(145deg, #fff 0%, #f5faff 100%);
    border-color: #cbdced;
    border-top: 3px solid var(--blue-600);
  }
  .page-profile .profile-hero__info h1 {
    color: var(--navy-900);
    font-weight: 800;
  }
  .page-profile .profile-hero__avatar > img,
  .page-profile .profile-hero__avatar > a > img {
    border-color: #fff;
    outline: 1px solid #bdd3e8;
    box-shadow: none;
  }
  .page-profile .profile-facts {
    border-color: #d6e2ee;
    background: #d6e2ee;
  }
  .page-profile .profile-facts > div {
    background: rgba(255, 255, 255, .92);
  }
  .page-profile .profile-facts dt {
    color: #6a7f96;
    font-weight: 600;
  }
  .page-profile .profile-media a {
    background: #f8fbff;
    border-color: #d7e4f0;
  }
  .page-profile #usual2,
  .page-profile #usual22 {
    border-color: #cdddeb;
    background: #fff !important;
  }
  .page-profile #usual2 > ul,
  .page-profile #usual22 > ul {
    background: linear-gradient(135deg, var(--navy-900), #0a4d88);
  }
  .page-profile #usual2 > ul a,
  .page-profile #usual22 > ul a {
    border-color: rgba(190, 218, 244, .9);
  }
  .page-profile #usual2 > ul a:not(.selected),
  .page-profile #usual22 > ul a:not(.selected) {
    background: #f7fbff;
  }
  .page-profile #tabs1 table .r-td,
  .page-profile #tabs2 table .r-td,
  .page-profile #tabs3 table .r-td,
  .page-profile #tabs4 table .r-td {
    color: #173b62;
    font-weight: 700;
    background: #eaf3fd !important;
    border-bottom: 1px solid #dbe7f2;
  }
  .page-profile #tabs1 table .l-td,
  .page-profile #tabs2 table .l-td,
  .page-profile #tabs3 table .l-td,
  .page-profile #tabs4 table .l-td {
    color: var(--ink-900);
    background: #fff !important;
    border-bottom: 1px solid #e2ebf4;
  }
  .page-profile #tabs1 table tr:last-child td,
  .page-profile #tabs2 table tr:last-child td,
  .page-profile #tabs3 table tr:last-child td,
  .page-profile #tabs4 table tr:last-child td {
    border-bottom: 0;
  }
  .page-profile #usual22 > div[id^="tabs"] {
    color: var(--ink-900);
    background: #fffdfd;
  }
  .page-profile .profile-actions .profile-action {
    border-color: #d5e1ed;
    box-shadow: none;
  }
  .page-profile .profile-actions .profile-action:active {
    background: #f3f8fe;
    border-color: #b8d2e9;
  }
}

@media (max-width: 480px) {
  .page-search .site-main form table table,
  .page-search .site-main form table table > tbody {
    display: block;
    width: 100% !important;
  }

  .page-search .site-main form table table > tbody > tr,
  .page-search .site-main form table table > tr {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    width: 100% !important;
  }

  .page-search .site-main form table table > tbody > tr > td,
  .page-search .site-main form table table > tr > td {
    display: block;
    width: 100% !important;
    min-width: 0 !important;
    height: auto !important;
    padding: 8px 10px;
  }

  .page-search .site-main form table table .r-td {
    border-radius: 6px 6px 0 0;
  }

  .page-search .site-main form table table .l-td {
    border-radius: 0 0 6px 6px;
  }

  .page-search .site-main form table table input[type="text"],
  .page-search .site-main form table table select {
    max-width: 100%;
  }
}

/* The user requested two member cards on phones, including narrow devices. */
@media (max-width: 599px) {
  .member-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
  .member-card { border-radius: 10px; }
  .member-card__head { min-height: 38px; gap: 4px; padding: 6px 5px; font-size: 12px; }
  .member-card__flag { width: 16px; height: 15px !important; }
  .member-card__body {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 7px;
    min-height: 178px;
    padding: 10px 7px;
    text-align: center;
  }
  .member-card__avatar { width: 62px; height: 62px !important; }
  .member-card__content { width: 100%; font-size: 11.5px; line-height: 1.55; }
  .member-card__date { margin-top: 5px; font-size: 10.5px; }
  .page-home .centervalue { padding: 8px; }
}

/* Home featured members only: compact cards keep the newest-members section near the first view. */
@media (max-width: 767px) {
  .page-home .member-grid--featured { gap: 7px; }
  .page-home .member-grid--featured .member-card {
    min-height: 0;
    border-radius: 9px;
    box-shadow: none;
  }
  .page-home .member-grid--featured .member-card__head {
    min-height: 30px;
    gap: 4px;
    padding: 4px 5px;
    font-size: 11px;
    line-height: 1.35;
  }
  .page-home .member-grid--featured .member-card__flag {
    width: 15px;
    height: 14px !important;
  }
  .page-home .member-grid--featured .member-card__body {
    display: grid;
    grid-template-columns: 44px minmax(0, 1fr);
    align-items: center;
    gap: 6px;
    min-height: 62px;
    padding: 7px;
    text-align: right;
  }
  .page-home .member-grid--featured .member-card__avatar-link {
    width: 44px;
    justify-self: center;
  }
  .page-home .member-grid--featured .member-card__avatar {
    width: 44px;
    height: 44px !important;
    border-width: 2px;
  }
  .page-home .member-grid--featured .member-card__content {
    display: -webkit-box;
    width: 100%;
    max-height: 3em;
    overflow: hidden;
    font-size: 10.5px;
    line-height: 1.5;
    text-align: right;
    overflow-wrap: normal;
    word-break: normal;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
  }
  .page-home .member-grid--featured .member-card__content:only-child {
    grid-column: 1 / -1;
    text-align: center;
  }
  .page-home .member-grid--newest .member-card--mobile-trimmed {
    display: none !important;
  }
}

@media (max-width: 767px) {
  .registration-form-hero {
    align-items: flex-start;
    gap: 8px;
    margin: 0 0 10px;
    padding: 13px 14px;
    border-radius: 14px;
    box-shadow: none;
  }

  .registration-form-hero__copy { gap: 2px; }
  .registration-form-hero__eyebrow { padding: 2px 8px; font-size: 9.5px; }
  .registration-form-hero h2 { margin-top: 2px; font-size: 18px; }
  .registration-form-hero p { font-size: 10.5px; line-height: 1.55; }

  .registration-form-hero__privacy {
    min-height: 30px;
    padding: 5px 8px;
    font-size: 9px;
    white-space: normal;
    text-align: center;
  }

  .registration-profile-form {
    gap: 9px;
    max-width: 100%;
  }

  .registration-profile-form > table.tab {
    border-radius: 12px;
    box-shadow: none;
  }

  .registration-profile-form > table.tab > tbody {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
  }

  .registration-profile-form > table.tab > tbody > tr,
  .page-register .site-main .registration-profile-form > table.tab > tbody > tr {
    display: grid !important;
    grid-template-columns: minmax(112px, 38%) minmax(0, 1fr) !important;
    grid-column: 1 / -1;
    width: 100% !important;
    min-width: 0 !important;
  }

  .registration-profile-form > table.tab > tbody > tr.registration-section-row,
  .registration-profile-form > table.registration-long-answer > tbody > tr {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  .registration-profile-form > table.tab > tbody > tr > td,
  .page-register .site-main .registration-profile-form > table.tab > tbody > tr > td {
    display: flex !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    height: auto !important;
    box-sizing: border-box;
  }

  .registration-profile-form > table.tab .h-td {
    min-height: 43px;
    padding: 9px 12px;
    color: #fff !important;
    font-size: 14px;
    line-height: 1.45;
    border-radius: 0;
  }

  .registration-profile-form > table.tab .h-td a,
  .registration-profile-form > table.tab .h-td span,
  .registration-profile-form > table.tab .h-td p { color: #fff !important; }

  .registration-profile-form > table.tab .r-td {
    justify-content: flex-start;
    min-height: 50px;
    padding: 7px 9px;
    font-size: 11.5px;
    line-height: 1.5;
    border: 0;
    border-inline-end: 1px solid #e5edf7;
    border-radius: 0;
  }

  .registration-profile-form > table.tab .l-td {
    min-height: 50px;
    padding: 5px 7px;
    font-size: 12px;
    border: 0;
  }

  .registration-profile-form input:not([type="radio"]):not([type="checkbox"]):not([type="button"]):not([type="submit"]),
  .registration-profile-form select,
  .registration-profile-form textarea {
    max-width: 100% !important;
    font-size: 16px !important;
    touch-action: manipulation;
  }

  .registration-profile-form input:not([type="radio"]):not([type="checkbox"]):not([type="button"]):not([type="submit"]),
  .registration-profile-form select {
    min-height: 40px;
    padding: 6px 8px;
  }

  .registration-profile-form textarea {
    min-height: 125px;
    padding: 9px 10px;
    line-height: 1.65;
    scroll-margin-top: 80px;
    scroll-margin-bottom: 46vh;
  }

  .registration-inline-validation {
    height: 22px;
    padding-top: 1px;
    font-size: 9.5px;
    line-height: 1.4;
  }

  .registration-profile-form #age,
  .registration-profile-form #length,
  .registration-profile-form #weight,
  .registration-profile-form select[name="number_of_children"] {
    width: calc(100% - 32px) !important;
  }

  .registration-profile-form > div[align="center"] { margin: -2px 0 0; }

  .registration-profile-form table.groundnotice {
    border-radius: 9px;
  }

  .registration-profile-form table.groundnotice .notice {
    display: block !important;
    padding: 8px 10px;
    font-size: 10.5px;
    line-height: 1.55;
  }

  .registration-profile-form table.groundnotice ul {
    grid-template-columns: minmax(0, 1fr);
    gap: 2px;
    padding-right: 17px;
  }

  .registration-profile-form > table.registration-long-answer .l-td {
    display: block !important;
    padding: 9px;
  }

  .registration-profile-form > table.registration-long-answer table.groundnotice {
    margin-bottom: 8px !important;
  }

  .registration-field-feedback {
    align-items: flex-start;
    gap: 3px 8px;
    min-height: 57px;
    margin-top: 4px !important;
  }

  .registration-field-feedback small {
    font-size: 10.5px;
  }

  .registration-validation-slot {
    flex-basis: 100%;
    min-height: 36px;
    font-size: 11px;
  }

  .registration-profile-form > p {
    margin: 2px 0 7px;
  }

  .registration-profile-form > p .sub-button {
    width: min(100%, 260px) !important;
    min-height: 48px;
    font-size: 15px;
    border-radius: 10px;
    box-shadow: none;
  }
}

@media (max-width: 359px) {
  .registration-card-heading { padding: 13px; }
  .registration-card-heading h2 { font-size: 18px; }
  .registration-terms-content { padding-inline: 12px; font-size: 13px; }
  .registration-consent { padding-inline: 11px; }
  .registration-consent__copy strong { font-size: 12.5px; }
  .registration-type-option { min-height: 110px; padding-inline: 5px; }
  .registration-type-option__avatar { width: 52px; height: 52px; }
  .registration-type-option__avatar img { width: 47px; height: 47px !important; }

  .primary-nav .nav-bar {
    grid-template-columns: 72px minmax(0, 1fr) 42px;
    gap: 4px;
    padding-inline: 5px;
  }
  .primary-nav .nav-bar.is-authenticated {
    grid-template-columns: 66px 46px minmax(0, 1fr) 40px;
  }
  .primary-nav .mobile-header-action {
    padding-inline: 5px !important;
    font-size: 10px;
  }
  .primary-nav .mobile-account-trigger {
    font-size: 9.5px;
  }
  .site-layout { padding-inline: 7px; }
  .member-grid { gap: 6px; }
  .member-card__head { font-size: 11px; }
  .member-card__body { padding-inline: 5px; }
  .member-card__avatar { width: 56px; height: 56px !important; }
  .member-card__content { font-size: 10.5px; }

  .registration-form-hero__privacy { display: none; }
  .registration-profile-form > table.tab > tbody > tr,
  .page-register .site-main .registration-profile-form > table.tab > tbody > tr {
    grid-template-columns: minmax(100px, 37%) minmax(0, 1fr) !important;
  }
  .registration-profile-form > table.tab .r-td { padding-inline: 7px; font-size: 11px; }
  .registration-profile-form > table.tab .l-td { padding-inline: 5px; }
}

/* Registration-only safeguards for narrow phones and portrait tablets. */
@media (max-width: 767px) {
  body.page-register .site-main .registration-profile-form > table.tab > tbody > tr > td:only-child,
  body.page-register .site-main .registration-profile-form > table.tab > tbody > tr > .h-td {
    grid-column: 1 / -1 !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
  }

  body.page-register .site-main .registration-profile-form > table.tab > tbody > tr > td:only-child textarea {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
  }
}

@media (min-width: 768px) and (max-width: 1023px) {
  .page-account-messages .message-table,
  .page-account-messages .message-table tbody,
  .page-account-messages .message-table tr,
  .page-account-messages .message-table td {
    display: block;
    width: 100% !important;
    min-width: 0 !important;
  }

  .page-account-messages .message-table {
    border: 0;
    background: transparent;
    box-shadow: none;
  }

  .page-account-messages .message-table caption {
    display: block;
    width: 100%;
    margin-bottom: 10px;
    border-radius: 12px;
  }

  .page-account-messages .message-table thead {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
  }

  .page-account-messages .message-table tbody {
    display: grid;
    gap: 11px;
  }

  .page-account-messages .message-table tr {
    display: grid;
    grid-template-columns: 64px repeat(2, minmax(0, 1fr));
    overflow: hidden;
    background: #fff;
    border: 1px solid var(--message-border);
    border-radius: 12px;
    box-shadow: var(--shadow-sm);
  }

  .page-account-messages .message-table td {
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 3px;
    padding: 9px 11px;
    text-align: right;
    border-bottom: 0;
    border-inline-start: 1px solid #e6edf5;
  }

  .page-account-messages .message-table td::before {
    content: attr(data-label);
    color: var(--ink-500);
    font-size: 11px;
    font-weight: 700;
    line-height: 1.4;
  }

  .page-account-messages .message-table td:nth-child(1) {
    grid-column: 1;
    grid-row: 2;
    width: auto;
    align-items: center;
    border-inline-start: 0;
  }

  .page-account-messages .message-table td:nth-child(2) {
    grid-column: 1 / -1;
    grid-row: 1;
    width: auto;
    min-width: 0;
    border-bottom: 1px solid #e6edf5;
    border-inline-start: 0;
  }

  .page-account-messages .message-table td:nth-child(3) {
    grid-column: 2;
    grid-row: 2;
    width: auto;
  }

  .page-account-messages .message-table td:nth-child(4) {
    grid-column: 3;
    grid-row: 2;
    width: auto;
    white-space: normal;
  }

  .page-account-messages .message-view-layout > tbody > tr {
    grid-template-columns: minmax(0, 1fr);
    gap: 12px;
  }

  .page-account-messages .message-details__body {
    min-height: 150px;
  }

  .page-account-messages .new-message-layout {
    grid-template-columns: minmax(0, 1fr);
    gap: 12px;
  }

  .page-account-messages .new-message-editor { order: 2; }
  .page-account-messages .new-message-editor .form-row--recipient { display: none; }

  .page-account-messages .message-recipient {
    order: 1;
    display: grid;
    grid-template-columns: 72px minmax(0, 1fr);
    gap: 3px 11px;
    padding: 12px;
    text-align: right;
    border-inline-start: 4px solid var(--blue-600);
  }

  .page-account-messages .message-recipient h3 {
    grid-column: 2;
    align-self: end;
    padding: 0;
    color: var(--ink-500);
    font-size: 11px;
    background: transparent;
  }

  .page-account-messages .message-recipient > a:first-of-type,
  .page-account-messages .message-recipient > .member-card__flag {
    grid-column: 2;
    justify-self: start;
  }

  .page-account-messages .message-recipient > a[aria-label] {
    grid-column: 1;
    grid-row: 1 / span 3;
    align-self: center;
  }

  .page-account-messages .message-recipient__avatar {
    width: 72px;
    height: 72px !important;
  }

  body.page-register .site-layout.has-right-sidebar,
  body.page-register .site-layout.has-two-sidebars {
    grid-template-columns: minmax(0, 1fr);
    grid-template-areas: "main";
  }

  body.page-register .site-sidebar-right,
  body.page-register .site-sidebar-left {
    display: none !important;
  }

  body.page-register .site-main,
  body.page-register .registration-profile-form {
    width: 100%;
    min-width: 0;
  }
}

/* Registration CAPTCHA: compact vertical flow without changing its original handlers. */
.captcha-label-short { display: none; }

.registration-profile-form > table.tab.registration-captcha {
  display: block;
  width: 100% !important;
}

.registration-profile-form > table.tab.registration-captcha > tbody {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) !important;
  width: 100%;
}

.registration-profile-form > table.tab.registration-captcha > tbody > tr {
  grid-column: 1 / -1 !important;
  width: 100% !important;
  min-width: 0 !important;
}

.registration-profile-form > table.tab.registration-captcha > tbody > .captcha-title-row,
.registration-profile-form > table.tab.registration-captcha > tbody > .captcha-image-row {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) !important;
}

.registration-profile-form .registration-captcha .captcha-label-long { display: none; }
.registration-profile-form .registration-captcha .captcha-label-short { display: inline; }

.registration-profile-form .registration-captcha .captcha-image-cell {
  display: block !important;
  min-height: 0;
  padding: 12px 14px !important;
  background: #fff;
}

.registration-profile-form .registration-captcha .captcha-image-cell > p {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 8px;
  width: 100%;
  margin: 0 !important;
}

.registration-profile-form .registration-captcha #siimage {
  display: block;
  flex: 0 1 auto;
  width: auto;
  max-width: 220px;
  height: auto !important;
  margin: 0 !important;
  border: 1px solid #b8c9dc !important;
  border-radius: 8px;
}

.registration-profile-form .registration-captcha object,
.registration-profile-form .registration-captcha .captcha-image-cell > p > a {
  flex: 0 0 32px;
  width: 32px;
  height: 32px;
}

.registration-profile-form > table.tab.registration-captcha > tbody > .captcha-entry-row {
  display: grid !important;
  grid-template-columns: auto minmax(120px, 140px) !important;
  align-items: start;
  justify-content: center;
  gap: 8px;
  padding: 10px 12px 12px;
  background: #f5f8fc;
  border-top: 1px solid #e5edf7;
}

.registration-profile-form .registration-captcha .captcha-entry-row > .r-td {
  width: auto !important;
  min-width: 0 !important;
  min-height: 42px;
  padding: 0 !important;
  background: transparent;
  border: 0;
}

.registration-profile-form .registration-captcha .captcha-label-cell {
  align-items: center;
  justify-content: flex-end;
  color: var(--navy-900);
  font-size: 13px;
  font-weight: 850;
  line-height: 42px;
  white-space: nowrap;
}

.registration-profile-form .registration-captcha .captcha-entry-row > .r-td:last-child {
  display: flex !important;
  flex-direction: column;
  align-items: stretch;
}

.registration-profile-form .registration-captcha input#captcha {
  flex: 0 0 42px;
  width: 140px !important;
  max-width: 140px !important;
  min-height: 42px;
  padding: 6px 9px;
  font-size: 16px !important;
  font-weight: 800;
  letter-spacing: .08em;
  text-align: center;
}

.registration-profile-form .registration-captcha #capview {
  display: block;
  width: 100%;
  margin-top: 3px;
  text-align: center;
}

@media (max-width: 359px) {
  .registration-profile-form .registration-captcha .captcha-image-cell {
    padding-inline: 8px !important;
  }

  .registration-profile-form .registration-captcha #siimage { max-width: 180px; }

  .registration-profile-form > table.tab.registration-captcha > tbody > .captcha-entry-row {
    grid-template-columns: auto minmax(108px, 126px) !important;
    gap: 6px;
    padding-inline: 8px;
  }

  .registration-profile-form .registration-captcha .captcha-label-cell { font-size: 12px; }

  .registration-profile-form .registration-captcha input#captcha {
    width: 126px !important;
    max-width: 126px !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; }
  .primary-nav { transition: none !important; }
}
